What is the effect of using Multi-core rather than Single-Core
A single core using time slicing which creates the image that the computer is actually multi tasking, but rather, its actually quickly changing between tasks and gives the image that its multi tasking
Multi core actually multi tasks and runs different programs concurrently.
OS Strategies
Batch Processing:
Processes are organized in batches and are executed as a job
Time Sharing
A system in which the CPU time is shared among multiple interactive users at a time
Role of the operating system in terms of Memory Management
Allocation: The OS allocates and deallocates portion of the memory to each program and ensures each program has its own memory so they dont get mixed up
Protection: Protects programs from stepping on each others toes by accessing memory that belongs to other programs. This avoids crashes and keeps the data safe.
Virtual memory: Once Ram space has ran out, the OS cleverly uses the hard disk memory into “virtual memory”. This allows you to run more programs than the original RAM could
Limitation of virtual memory
The disadvantage of virtual memory is the need to constantly go back and forth between main memory and secondary memory. Excessive page swapping is called thrashing and can degrade the system.
By using a portion of the Disk drive as primary memory, the speed of a hard disk is several orders slower than main memory
Benefits of virtual memory
Lets you run larger programs and multi task more effectively even with limited RAM
Role of the operating system in terms of Peripheral management
Device drivers: The OS uses device translators which are translation between the language on a peripheral device and the OS system, this helps the OS communicate with the Peripheral devices
Resource allocation: The OS ensures that each peripheral device gets the resources that they need to function correctly
Plug and play: with modern OS, they make it easy to connect new devices as they automatically detect the device, find the right driver, and set everything up, no hunting for for CD’s or installation files
Role of the operating system in terms of hardware interfaces
Abstraction: The Os provides a consistent way for software to interact with hardware, regardless of the specific component. Its like having a universal remote that works for any device no matter the inner workings.
Processor management: The OS schedules and prioritizes tasks, ensuring that the CPU is used efficiently.
Input/output management:
It handles the flow of data between the computer and the outside world, managing communication with devices like hard drives, network cards, and USB ports
What is scheduling
Scheduling refers to the OS deciding which program gets to use the CPU and for how long. its needed to ensure fair allocation of the CPU as it prevents processes from hogging the CPU causing other ones to freeze.
Types of addresses
Logical address: value that specifies a generic location relative to the program
Physical address: actual address in main memory
Types of scheduling
First come first serve
shortest Job first
Round Robin
Priority scheduling
Advantages dedicated OS for a device
The OS can be optimized for its task. Does not need to do all things a generic OS would
Faster because optimized for a specific set of hardware
Can do one thing really well instead of many fairly well