zCore
zCore copied to clipboard
Simulating a fast disk with physics cores and more elegent porting about fu740
Mock disk:
- A new option, "MOCK", is added. When "MOCK=1" and "SMP >= 2", a secondary core will act as a block disk device. Other cores submit block requests through a MPSC queue in memory and receive interrupts via IPI.
- Multi-Producer-Singal-Consumer queue (check kernel-hal::utils::mpsc_queue) is added for mock disk and ipi information.
- LazyInit, which is very simliar to lazy_static, is added for those object whose initial point is fixed and clear. (By the way, It seems lazy_static will consume more memory sometimes for unknown reasons).
Porting of fu740:
- zCore can run on fu740 without special entry code and memory map.
👍👍👍