Do You want to create your own OS (mission 3)
When your journey to implement your own Operating System this is the part you are going to learn some serial ports. use mouse, mouse movements.
you need to create C functions and some header files and call them via assembly.
Then you have to learn Priority Based scheduling.
Priority Based Scheduling
Each process is assigned a priority
Priority are two types
Static priority — typically set at start of execution
Dynamic priority — Scheduler can change the process priority during execution in order to archive scheduling goals.
To process those priority levels we use multilevel ques.
CPU Scheduler
Types of process- I/O bound, CPU bound
Several CPU scheduling Algorithms and scheduling criteria
various Scheduling algorithms ex- FCFS Algorithm
then Convoy Effect- All process wait for some big process to get off the CPU.
ex2- Shortest Job First (SJF Algorithm) — No preemption algorithm. this algorithm scheduled process to ascending order using CPU Burst time.
ex3- SRTF Algorithm
ex4- Round Robin scheduling — Run process for a time slice then move to back to ready queue.
Process Types
Realtime — have deadlines, Should never blocked by low priority task
Normal Processes-Interactive, Batch
Completely Fair Scheduling(CFS)
This is the newest scheduler currently used in Linux systems
The Linux scheduler since 2007
By Lngo Molnar
No heuristics
Elegant handling of I/O and CPU bound process.