summaryrefslogtreecommitdiff
path: root/src/core/hle/kernel/process.h
diff options
context:
space:
mode:
authorGravatar bunnei2017-09-30 14:15:09 -0400
committerGravatar bunnei2017-09-30 14:33:58 -0400
commit8c92435ded5c9c89290604a03e307c038b4d4117 (patch)
tree89640df0ae25ef5c78b79c1d8169f5ad6c25d63b /src/core/hle/kernel/process.h
parentprocess: Support loading multiple codesets. (diff)
downloadyuzu-8c92435ded5c9c89290604a03e307c038b4d4117.tar.gz
yuzu-8c92435ded5c9c89290604a03e307c038b4d4117.tar.xz
yuzu-8c92435ded5c9c89290604a03e307c038b4d4117.zip
nso: Refactor and allocate .bss section.
Diffstat (limited to 'src/core/hle/kernel/process.h')
-rw-r--r--src/core/hle/kernel/process.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/core/hle/kernel/process.h b/src/core/hle/kernel/process.h
index 7350c6c41..f05f2703e 100644
--- a/src/core/hle/kernel/process.h
+++ b/src/core/hle/kernel/process.h
@@ -93,13 +93,13 @@ private:
93 93
94class Process final : public Object { 94class Process final : public Object {
95public: 95public:
96 static SharedPtr<Process> Create(SharedPtr<CodeSet> code_set); 96 static SharedPtr<Process> Create(std::string&& name);
97 97
98 std::string GetTypeName() const override { 98 std::string GetTypeName() const override {
99 return "Process"; 99 return "Process";
100 } 100 }
101 std::string GetName() const override { 101 std::string GetName() const override {
102 return codeset->name; 102 return name;
103 } 103 }
104 104
105 static const HandleType HANDLE_TYPE = HandleType::Process; 105 static const HandleType HANDLE_TYPE = HandleType::Process;
@@ -109,7 +109,6 @@ public:
109 109
110 static u32 next_process_id; 110 static u32 next_process_id;
111 111
112 SharedPtr<CodeSet> codeset;
113 /// Resource limit descriptor for this process 112 /// Resource limit descriptor for this process
114 SharedPtr<ResourceLimit> resource_limit; 113 SharedPtr<ResourceLimit> resource_limit;
115 114
@@ -138,7 +137,7 @@ public:
138 /** 137 /**
139 * Applies address space changes and launches the process main thread. 138 * Applies address space changes and launches the process main thread.
140 */ 139 */
141 void Run(s32 main_thread_priority, u32 stack_size); 140 void Run(VAddr entry_point, s32 main_thread_priority, u32 stack_size);
142 141
143 void LoadModule(SharedPtr<CodeSet> module_, VAddr base_addr); 142 void LoadModule(SharedPtr<CodeSet> module_, VAddr base_addr);
144 143
@@ -166,6 +165,8 @@ public:
166 /// This vector will grow as more pages are allocated for new threads. 165 /// This vector will grow as more pages are allocated for new threads.
167 std::vector<std::bitset<8>> tls_slots; 166 std::vector<std::bitset<8>> tls_slots;
168 167
168 std::string name;
169
169 VAddr GetLinearHeapAreaAddress() const; 170 VAddr GetLinearHeapAreaAddress() const;
170 VAddr GetLinearHeapBase() const; 171 VAddr GetLinearHeapBase() const;
171 VAddr GetLinearHeapLimit() const; 172 VAddr GetLinearHeapLimit() const;