Michael Scire
|
436613401a
|
kern: devirtualize several KAutoObject functions
|
2021-10-23 21:13:26 -07:00 |
|
SciresM
|
36e4914be8
|
kern: avoid constexpr init for many objects (avoids unnecessary memory clear) (#1668)
|
2021-10-23 15:25:20 -07:00 |
|
Michael Scire
|
aed9d3f535
|
util: better match true std::atomic semantics
|
2021-10-20 11:02:17 -07:00 |
|
Michael Scire
|
d74f364107
|
kern/util: use custom atomics wrapper to substantially improve codegen
|
2021-10-19 15:24:15 -07:00 |
|
Michael Scire
|
f3b532070b
|
kern: update scheduler for 13.0.0 change, fix some ctz/clz bugs
|
2021-10-19 01:20:28 -07:00 |
|
Michael Scire
|
42b6c2dd95
|
kern: fix use of plr vs plr_heap, fix close/unlock order in ArbitrateLock
|
2021-10-19 01:19:31 -07:00 |
|
Michael Scire
|
77fe5cf6f5
|
ams: the copyright^H^H^H^H^H^H^Hmplex plane is the algebraic closure of the reals
|
2021-10-04 12:59:10 -07:00 |
|
Michael Scire
|
f6fb5f2c8d
|
kern/svc: implement IoPool/Region svc support
|
2021-09-19 10:34:31 -07:00 |
|
Michael Scire
|
2c4bd44d7e
|
kern: support dynamic resource expansion for system heaps/events/sessions.
|
2021-09-19 10:34:31 -07:00 |
|
Michael Scire
|
d80ad222cc
|
kern: KConditionVariable arbiter functions now static
|
2021-09-19 10:34:31 -07:00 |
|
Michael Scire
|
572cbd8619
|
kern: KAutoObject doesn't need (virtual) destructor
|
2021-09-19 10:34:31 -07:00 |
|
Michael Scire
|
6faa3534bf
|
kern: update pinning semantics for terminating threads
|
2021-04-11 03:42:16 -07:00 |
|
Michael Scire
|
afb1d68d06
|
kern: ensure handle table is finalized when deferring termination
|
2021-04-11 03:42:16 -07:00 |
|
Michael Scire
|
2f930c2d5f
|
kern: support immortal processes
|
2021-04-11 03:42:16 -07:00 |
|
Michael Scire
|
256eb92f4c
|
kern: update process/thread for new running/termination semantics
|
2021-04-11 03:42:16 -07:00 |
|
Michael Scire
|
4aa18b06e8
|
kern: greatly improve codegen for atomics, scheduler
|
2021-01-08 02:13:43 -08:00 |
|
Michael Scire
|
968f50bc07
|
kern: refactor to use m_ for member variables
|
2020-12-18 13:31:01 -08:00 |
|
Michael Scire
|
4b71e3a87e
|
kern: implement process cpu utilization debug
|
2020-12-12 05:34:31 -08:00 |
|
Michael Scire
|
be8473cf65
|
kern: implement memory debug
|
2020-12-10 16:32:19 -08:00 |
|
Michael Scire
|
1a6e003a5d
|
kern: add kernel object debug
|
2020-12-10 03:31:57 -08:00 |
|
Michael Scire
|
5da6b60008
|
kern: add KAlpha/KBeta
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
b0debd72a7
|
kern: Kill KCoreLocalRegion
|
2020-12-02 06:43:37 -08:00 |
|
Michael Scire
|
bb11c57e7d
|
kern: fix warn-errors
|
2020-09-07 10:43:35 -07:00 |
|
Michael Scire
|
cda15f08d8
|
kern: mark KThread/KProcess.GetId() final to save virtual calls
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
e1bd6fb874
|
kern: fix missing scheduler updates in KLightLock/Exception, fix RequestScheduleOnInterrupt
|
2020-08-18 15:17:40 -07:00 |
|
Michael Scire
|
5d462c626c
|
kern: SvcReturnFromException
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
e1f3bb10a5
|
kern: clean up majority of TODOs
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
325802e29d
|
kern: Add real SvcBreak implementation
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
b143f1e05f
|
kern: Svc(Legacy)ContinueDebugEvent
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
96c3dfee14
|
kern: SvcGetThreadList
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
51084c0837
|
kern: SvcGetLastThreadInfo, SvcGetDebugFutureThreadInfo
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
787964f7e7
|
kern: implement thread pinning/SvcSynchronizePreemptionState
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
840ab0785c
|
kern: SvcMapPhysicalMemoryUnsafe, SvcUnmapPhysicalMemoryUnsafe
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
1b9acc4a6a
|
kern: SvcUnmapPhysicalMemory, cleanup thread pinning
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
fd9b986938
|
kern: Implement SecureMemory (system resource)
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
1d4d637818
|
kern SvcGetCurrentProcessorNumber, SvcSetProcessActivity, half of SvcSetThreadActivity
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
28aab09b5d
|
kern: implement process exit
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
afe7e41de8
|
kern: SvcGetProcessInfo, SvcTerminateProcess
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
7aa3120f60
|
kern: fully implement KSharedMemory (and Svcs)
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
8759cb4da3
|
kern: implement first half of SvcCreateProcess
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
3cf793f87e
|
kern: implement KThread::Finalize
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
3265927ed7
|
kern: KDevicePageTable::Finalize, InfoType_RandomEntropy
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
94f9cc1626
|
kern: SvcCreateSession, KDebug finalization
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
36eb78a3ce
|
kern: implement SvcDebugActiveProcess, svcGetDebugEvent, SvcWaitProcessWideKeyAtomic
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
a0cc22302c
|
kern: add KAddressArbiter::WaitIfEqual
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
fe035736ca
|
kern: implement SvcGetProcessList
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
04f325cf5a
|
kern: implement SvcCreateInterruptEvent
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
b35380a942
|
kern: implement SvcCreateEvent, SvcSignalEvent, SvcClearEvent, SvcResetSignal
|
2020-07-31 14:50:52 -07:00 |
|
Michael Scire
|
57867d6ced
|
kern: fix/add InfoType_(Total/Used)(NonSystem/)MemorySize
|
2020-07-13 12:17:28 -07:00 |
|
Michael Scire
|
4a7ce9dd75
|
kern/KScheduler: implement special yields
|
2020-07-11 00:48:26 -07:00 |
|