public KProcess(KernelContext context) : base(context) { _processLock = new object(); _threadingLock = new object(); AddressArbiter = new KAddressArbiter(context); _fullTlsPages = new SortedDictionary <ulong, KTlsPageInfo>(); _freeTlsPages = new SortedDictionary <ulong, KTlsPageInfo>(); Capabilities = new KProcessCapabilities(); RandomEntropy = new long[KScheduler.CpuCoresCount]; // TODO: Remove once we no longer need to initialize it externally. HandleTable = new KHandleTable(context); _threads = new LinkedList <KThread>(); Debugger = new HleProcessDebugger(this); }
public KProcess(Horizon system) : base(system) { _processLock = new object(); _threadingLock = new object(); _system = system; AddressArbiter = new KAddressArbiter(system); _fullTlsPages = new SortedDictionary <ulong, KTlsPageInfo>(); _freeTlsPages = new SortedDictionary <ulong, KTlsPageInfo>(); Capabilities = new KProcessCapabilities(); RandomEntropy = new long[KScheduler.CpuCoresCount]; _threads = new LinkedList <KThread>(); _svcHandler = new SvcHandler(system.Device, this); Debugger = new HleProcessDebugger(this); }