Fundamentals tasks of an operating system:
•Management of program.
•Organize their execution by sharing the CPU.
•Management of Resources.
•Security and Protection.
•Efficient allocation/de-allocation without constraining users program.
Types of OS:
1. Multiprogramming OS:
• All the programs to be run are loaded in the main memory.
•OS picks one program and execute it.
•Once it is finished, the OS pick another one and execute it.
Advantages:
1.Through Put increase
2.Increased performance - CPU never idle.
3. Efficient memory utilization.
2. Multitasking OS/Time sharing OS:
•OS allows many user to share the same computer and interact with it.
• The ability to run multiple programs on the same machine at the same time.
•Time sharing can also be used on single user computer(PC) It mean user can work on several programs .
•Time sharing is an extension the multiprogramming OS.
•Many users as terminals.
Model of OS:
•Process Manager.
•Memory Manager.
•Device Manager.
•File Manager.
•Network Manager.
What is a Process?
Process: A program in execution called process in sequential includes.
Process includes:
•program counter.
•Stack
•Data Section.
•Heap.
Process states are New, running, waiting, ready, terminated.
Schedulers:
•Long term scheduler (Job scheduler) : select which processes should be brought into the ready queue.
•Short term scheduler (CPU scheduler): Select which process should be executed next and allocated CPU.
Scheduling Criteria:
•CPU utilization; keep the CPU busy.
•Throughput: number of processes that complete their execution per time.
•Turnaround time: amount of time to execute process .
•waiting time: amount of time a process has been waiting in ready queue
•Response time: amount of time it takes from when request was submitted until the first response is produced.
Max CPU utilization
Max throughout.
Min turnaround time.
Min waiting time.
Min response time.
Dead Lock:
•Process goes on to an indefinite wait(it blocks),when dead Lock occurs.
•User will be waiting for programming to respond, but it will never happen.
Memory management;
When a process is executed it has to be in main memory as the main memory can be accessed quickly.
Memory Partition:
•Fixed - sized partition.(Main memory divided into equal sized chunks)
•Variable - sized partition.(A better way of partitioning the main memory is variable - sized).
Swapping:
•If the CPU become idle, Some processes are moved temporarily out of main memory to the disk, to free a space for new process to come to be executed by the CPU.
•CPU become idle to solve this problem swapping techniques used.
Fragmentation:
•Memory is divided into partition.
•if allow free space within partition we have internal fragmentation.
1. External Fragmentation: unused space between partitions.
2. Internal Fragmentation: unused space within each partition.
Paging:
• A program is divided into small fixed sized chunks (pages).
•Main memory is divided into small fixed sized chuck's (frames).
•1Frame=1KB, Frame size = page size.
Logical address - generated by the CPU also referred to as virtual address.
Physical address - address seen by memory unit.
Virtual memory:
• Demand paging gives the concept of virtual memory.
•Demand paging and virtual memory are widely used in today's operating system.
•Impression of a bigger computer memory.
File Manager:
• Create, deleting, modifying, controlling access to files.
Four task of file manager:
1.Keep track of where each file stored .
2. Implement a policy.
3. Allocation each file.
4. File de-allocation.
File allocation:
Active secondary storage device, load file into memory, update record.
File de allocation:
Update file table, rewrite file , notify waiting processes of file availability.
Operating system interface:
CLI COMMAND LINE INTERFACE
BATCH SYSTEM COMMANDS
MENU DRIVE INTERFACE
GRAPHICAL USER INTERFACE
SYSTEM CALLS
1.Process control
2.File manipulation
3.Device Manipulation.
4.Information maintenance.
5. Communication.
THANK YOU...