Operating System Part 1_ Introduction to Operating Systems
Operating System Part 1_ Introduction to Operating Systems
SYSTEM
PART 1: INTRODUCTION TO OPERATING
SYSTEMS
No Tel: +6084-874001
Fax :+6084-874005
Website:https://www.pmu.edu.my/v5/
Operating System
Part 1: Introduction to Operating System
Author : Rozaida Binti HJ Halil
USER INTERFACES
System Application
software software
SOFTWARE
Operating System
1) Monolithic
Known as “The Big Mess” - there is no structure.
All kernel routines are located in the same space
Any routines can call other routines.
Examples: Traditional Unix, MS-DOS
Pros:
• Shared kernel space
• Good performance for small OS
Cons:
• No information hiding
• Difficult to maintain (debug)
Routine A Routine B
Routine E Routine C
Routine
D
pros:
• Hidden operation by each layer
• Simplicity of construction and debugging
Cons:
• Must appropriately define the various layers
• Each layer adds overhead to the system, takes longer time
compare to a non-layered system
3) Microkernel
Microkernel structure removes all non-important components
from the kernel. Non-important kernels are implemented as
user-level programs. Components outside microkernel
communicate indirectly with one another through the
microkernel.
Pros:
• Smaller kernel
• More security and reliability
Cons:
• Performance decreases due to system function overhead
• Process management is complex
Microkernel OS structure removes Client Application, PEACE Threads, File Server and Display
Server from the original kernel and implements them as user-level programs
4) Networked / distributed
The diagram shows the connections that are combined through the network
Single processor system has only one actual processor and all
processing tasks share a single CPU.
2) Multiprocessor system
Clustered systems use shared storage and are closely linked via
LAN networking.
OPERATING SYSTEM CATEGORY
1. Closed source system
Closed source System refers to the computer system which
source code is closes means public is not given access to the
source code. In short it is referred as CSS. In closed source
system the source code is protected. The only individual or
organization who has created the system can only change it.
The price of closed source system is high and users need to have
valid and authenticated license to use the system. As is issues
an authenticated license so it also put a lot restrictions on users
based on usability and modification of system. The source code
of this OS is a secret by its manufacturer. Users pay to use it.
Support is available. User-friendly.
e.g.: Microsoft Windows, Mac OS
OPERATING SYSTEM CATEGORY
2. Open source system
Example of Multiprogramming
2. MULTITASKING
Small differences between multitasking and multiprogramming.
Multitasking has a more general scope. It refers to having
multiple items (programs, processes, tasks, threads) running at
the same time. Multitasking uses time-sharing concept.
Concepts Related to OS
3. TIME SHARING
It is the technique of scheduling a CPU's time so that the CPU is
shared among multiple tasks.
User may find that all processes are going on simultaneously,
but in fact they are actually being given a time slice in turns.
From user’s perspective, Program A, Program B, and Program C are running simultaneously, while in fact they
are taking turns to utilize the CPU’s time. This applies for each core of the CPU.
4. BUFFERING
Buffer is part of the main memory used to temporarily store data
while it is being moved from one place to another.
Example: Voice data from a microphone is stored in a buffer just
before it is sent to an output device (such as speakers). Data is
stored in a buffer as it is retrieved from an input device (such as
a keyboard) or just before it is sent to an output device (such as
a printer).
Use of this buffer is known as ‘buffering'.
Concepts Related to OS
Saha, Sneha (2016) Try These 5 TRICKS to Fix Video Buffering Problem. Retrieved from
https://www.gizbot.com/how-to/tips-tricks/try-these-5-ways-to-fix-video-buffering-problem-035292.html
5. SPOOLING
Spooling (Simultaneous Peripheral Operations On Line) refers to
putting jobs in a buffer, where a device can access them when it
is ready. Spooling is useful because devices access data at
different rates. The buffer provides a waiting station while the
slower device catches up. The most common spooling
application is print spooling. In print spooling, documents are
loaded into a buffer, and then the printer pulls them off
(spooling) the buffer when the printer is ready.
The above Intel CPU has a big Level 3 cache (15MB) to store frequently accessed instructions, hence making the
processor perform faster than a smaller-cache CPU
The components of an operating system play a key role to make
a variety of computer system parts work together. There are the
following components of an operating system, such as:
1) Kernel
The kernel is the core component of an OS. The kernel bridges
the hardware to the application software. The kernel is
responsible for memory, process, task, and disk management.
The kernel does not interact directly with the user, but rather
interacts with the shell.
E.g. Linux kernel, Windows kernel
2) Shell
The outermost part of an OS, hence the name ‘shell’.
A program that interacts with user commands such as in CLI
(command-line interface). In CLI, the user types commands to
perform functions such as run programs, browse directories, etc.
Shell may be GUI as well. The user interacts with the kernel via
shell.
Example: Command Prompt (CLI shell for Windows)
Examples Of Shell Usage
3) File system
File system (or filesystem) is the method and data structures
that an operating system uses to keep track of files on a disk or
partition In simple, it is the way the files are organized on the
disk. It is used to store, retrieve and update a set of files as well
as arrange storage space.
E.g. FAT32, NTFS, HFS, ext3.
User
Shell
Applications
Kernel
CPU Memory Devices
This diagram shows the interaction between the application and the OS
A user interface is the system by which people (users) interact
with a machine.
User interfaces exist for various systems.
4 type user interface:
1) Command-line Interface (CLI)
Using CLI, the user enters commands to the program in the form
of text.
CLI is often used by programmers and system administrators,
and by technically advanced users.
Examples of CLI: Windows Command Prompt
https://www.linkedin.com/pulse/api-application-
programming-interface-chitra-r
Example: Google
Maps API is
integrated inside
iPhone’s
application