1
0
Fork 0
mirror of https://github.com/Ryujinx/Ryujinx.git synced 2024-10-01 12:30:00 +02:00
Ryujinx/Ryujinx.HLE/HOS/Kernel/Memory
gdkchan 6922862db8
Optimize kernel memory block lookup and consolidate RBTree implementations (#3410)
* Implement intrusive red-black tree, use it for HLE kernel block manager

* Implement TreeDictionary using IntrusiveRedBlackTree

* Implement IntervalTree using IntrusiveRedBlackTree

* Implement IntervalTree (on Ryujinx.Memory) using IntrusiveRedBlackTree

* Make PredecessorOf and SuccessorOf internal, expose Predecessor and Successor properties on the node itself

* Allocation free tree node lookup
2022-08-26 18:21:48 +00:00
..
AddressSpaceType.cs Refactor SVC handler (#540) 2018-12-18 03:33:36 -02:00
DramMemoryMap.cs POWER - Performance Optimizations With Extensive Ramifications (#2286) 2021-05-24 22:52:44 +02:00
KCodeMemory.cs Implement code memory syscalls (#2958) 2022-05-03 13:16:31 +02:00
KMemoryBlock.cs Optimize kernel memory block lookup and consolidate RBTree implementations (#3410) 2022-08-26 18:21:48 +00:00
KMemoryBlockManager.cs Optimize kernel memory block lookup and consolidate RBTree implementations (#3410) 2022-08-26 18:21:48 +00:00
KMemoryBlockSlabManager.cs POWER - Performance Optimizations With Extensive Ramifications (#2286) 2021-05-24 22:52:44 +02:00
KMemoryInfo.cs IPC refactor part 2: Use ReplyAndReceive on HLE services and remove special handling from kernel (#1458) 2020-12-02 00:23:43 +01:00
KMemoryManager.cs POWER - Performance Optimizations With Extensive Ramifications (#2286) 2021-05-24 22:52:44 +02:00
KMemoryRegionManager.cs Rewrite kernel memory allocator (#3316) 2022-06-22 12:28:14 -03:00
KPageBitmap.cs Rewrite kernel memory allocator (#3316) 2022-06-22 12:28:14 -03:00
KPageHeap.cs Rewrite kernel memory allocator (#3316) 2022-06-22 12:28:14 -03:00
KPageList.cs POWER - Performance Optimizations With Extensive Ramifications (#2286) 2021-05-24 22:52:44 +02:00
KPageNode.cs Refactor SVC handler (#540) 2018-12-18 03:33:36 -02:00
KPageTable.cs Support memory aliasing (#2954) 2022-05-02 20:30:02 -03:00
KPageTableBase.cs Optimize kernel memory block lookup and consolidate RBTree implementations (#3410) 2022-08-26 18:21:48 +00:00
KScopedPageList.cs POWER - Performance Optimizations With Extensive Ramifications (#2286) 2021-05-24 22:52:44 +02:00
KSharedMemory.cs Support memory aliasing (#2954) 2022-05-02 20:30:02 -03:00
KSlabHeap.cs Refactor SVC handler (#540) 2018-12-18 03:33:36 -02:00
KTransferMemory.cs Support memory aliasing (#2954) 2022-05-02 20:30:02 -03:00
MemoryAttribute.cs Refactor SVC handler (#540) 2018-12-18 03:33:36 -02:00
MemoryFillValue.cs kernel: Clear pages allocated with SetHeapSize (#2776) 2021-10-24 18:52:59 -03:00
MemoryPermission.cs kernel: A bit of refactoring and fix GetThreadContext3 correctness (#3042) 2022-01-29 22:18:03 +01:00
MemoryRegion.cs Refactor SVC handler (#540) 2018-12-18 03:33:36 -02:00
MemoryState.cs kernel: A bit of refactoring and fix GetThreadContext3 correctness (#3042) 2022-01-29 22:18:03 +01:00
SharedMemoryStorage.cs Support memory aliasing (#2954) 2022-05-02 20:30:02 -03:00