Operating System Introduction
Operating System Introduction
` Concepts
Operating System
Semester: 5th
Lecture:1
Lecturer : M.fahim “Naseri”
Jahan university
Prepare ,Computer
by: science faculty Lecturer: Khalilullah Khalid
Fahim.naseri456@gmail.com
year: 1402
1
What is an operating system?
2
Examples of operating systems
• There are different operating systems that are in use today such as:
• Windows
• Linux and UNIX
• Mac OS
• JunOS, VRP, IOS
• Android OS, iOS, Windows phone OS
3
Client and Server Operating Systems
4
Goals of an operating system
5
Role of operating system in Computer System
Structure
6
Role of operating system in Computer System
Structure
7
Open Source & Closed Source Operating Systems
8
Open Source & Closed Source Operating Systems
• Closed source operating system - Closed-source operating systems use code that
is proprietary and kept secret to prevent its use by other entities. Traditionally, they
are sold for a profit.
• Examples of closed source operating systems are Mac OS, UNIX, Windows.
9
Computing Environments
• Traditional computing
• Office environment - PCs connected to a network, terminals attached to
mainframe or minicomputers using time-sharing.
• Home networks - Used to be single system, then modems, now firewalled &
networked.
10
Computing Environments
• Client-Server Computing
• Dumb terminals supplanted by smart PCs. Many systems such as servers,
responding to requests generated by clients.
Server Computer provides an interface to client to request services (i.e.
database)
File-server provides interface for clients to store and retrieve files.
11
Computing Environments
13
Computing Environments
• Cloud computing
⚫ Cloud computing is the delivery of computing as service rather than a
product.
⚫ Cloud computing means storing and accessing data and programs over the
internet instead of your computer's hard drive.
⚫ It allows on-demand network access to shared computing resources over the
internet from a remote location.
14
What is a User Interface?
• User interface is a medium or the screen thru which a user interacts with an
application, website or an operating system in order to complete the tasks.
• The user interface is of two types
• Command Line Interface (CLI)
• Graphical User Interface (GUI)
15
User Interface
16
User Interface
• Graphical User Interface - A GUI uses windows, icons, and menus to perform
tasks such as opening, deleting, and moving files.
• Although many GUI operating systems are through the use of a mouse, the
keyboard can also be utilized by using keyboard shortcuts or arrow keys.
• GUI operating systems are much easier to learn and use because commands do not
need memorized.
17
User Interface
18
Distributed Operating System
19
Distributed Operating System
21
History of Operating Systems
Generations:
(1945–55) Vacuum Tubes
(1955–65) Transistors and Batch Systems
(1965–1980) ICs and Multiprogramming
(1980–Present) Personal Computers, Tablets, Phones
The First Generation (1945–55) Vacuum Tubes
23
2nd Generation (1955–65)
Transistors and Batch Systems
24
3rd Generation (1965–1980)
25
4th Generation (1980–To Date)
PC, Tablets, Phones
26
Virtual Machines
27
Virtual Machines
• The resources of the physical computer are shared to create the virtual machines
and each virtual machine is completely isolated from another VM in order to
protect their system resources.
• A virtual machine is a complete vehicle for operating system R & D.
28
Virtual Machines
29
Operating system design and implementation
• There are problems in the design and implementation of the operating system and the reasons
are:
• Internal structure of the operating systems vary widely.
• Operating system is designed by defining goals and specifications.
• Choice of hardware and type of system.
• Defining the user goals and system goals
• User Goals - Convenience, easy to learn, reliable, safe and fast
• System Goals - Reliable, error free, efficient, easily designed & implemented
30
Operating system design and implementation
• Implementation of an operating system means that how an operating system is written and
installed on the system. Now a days operating systems are written in higher level programming
languages such as C/C++.
• Advantages of higher-level programming languages:
• Development of the operating system is faster and easier to port
• Disadvantages of higher level languages:
• Reduced speed and increased storage requirements
31
System Boot
32
System Boot
• A motherboard has a program called BIOS which starts when the computer is booted
and it checks RAM, keyboard and other basic devices.
• These basic devices and plug & play devices are also checked to see whether they are
connected or not.
• If the devices present are different from when the system was last booted, the new
devices are configured.
• The BIOS then determines the boot device and the first sector of the boot device is
read and executed.
33
System Boot
• This sector contains a program that checks the partition table at the end of the boot
sector to see which partition is active.
• A boot loader is read from active partition which reads the operating system from the
active partition and starts that.
• The operating system queries the BIOS to get the configuration information and then
for each device, it checks and then loads all the device drivers into the kernel.
• The OS initializes its tables, creates background processes and starts up the GUI and a
login program.
34
System Programs
• System programs are also known as system utilities. These programs provide a
convenient environment for the execution and development of programs. There
are system programs for the following tasks:
a. File Management & Modification
b. Status Information
c. Data Encryption
d. Communication over the Network
35
System Calls
• System call provides an interface to the services made available by the OS and to
understand system calls, we must know about the two modes of OS.
• Kernel Mode 2. User Mode
• If a program runs in user mode, it does not have direct access to resources
(memory, CPU, I/O)
• If a program runs in Kernel mode, it has direct access to the resources.
36
System Calls
▪ Whenever user mode calls to the system that it need certain resources this call is
called the system call.
▪ System calls are made by the programs that it need resources.
▪ System call is the programmatic way in which a computer program requests a
service from the kernel of the operating system
▪ These calls are generally available as routines written in C and C++.
37
Types of System Calls
38
Types of System Calls
39
Types of System Calls
▪ Information maintenance system calls: All the information about our system we have made
must be updated.
▪ Get time or date, set time or date
▪ Get system data, set system data
▪ Communication system calls: which are used for communication between different processes or
different devices.
▪ Create, delete communication connection
▪ Send, receive messages
▪ Transfer status information 40