You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The original multithreading system, lateral::future, did not allow threads to yield during execution largely because of Rust's future model, and ran threads in order, completely synchronously. This has been changed to a new, custom-built solution called lateral::thread which allows threads to be run in the background on seperate physical CPU threads, and for threads to yield during execution. This allows patterns such as infinite loops and keyboard input to coexist. Internal thread spawning still remains present, and now allows threads to outlive the parent thread.
lateral::future has been removed.
lateral::thread Adds the new thread model.
lateral::thread::ps2 Moves ps2 keyboard input to this new model.
lateral::thread::queue Is a structure that allows spawning of internal threads.
lateral::io::logging Adds a format for fancy kernel logging.
lateral::cpu::interrupt Was changed to the new kernel logging system.
lateral::cpu::gdt Adds a stack size parameter for threads.
lateral::alloc::heap Changes the heap size from 100KiB to 10MB
lateral (lib.rs) Adds the global thread queue, and a helpful spawn_thread function.