The document discusses operating systems and provides information on various topics related to operating systems including:
- What an operating system is and its main functions
- Types of operating systems such as single-user/multi-user, real-time, distributed, and mobile operating systems
- Components of an operating system including the kernel, shell, interrupts, and processes
- Concepts such as booting, memory management, virtual memory, and process scheduling
- Additional topics like threads, cloud computing, computer storage, and advantages of cloud computing
2. Operating System
• An interface between Applications and hardware
• It manages computer hardware resources and
provides services for computer programs
• Application programs require an operating system
to function.
3. Operating System
• A program or a software that governs the
functioning of other programs
• It keeps track of files and folder on the disk
• Manages CPU Time
• Control devices
• Allows convenient usage; hides the tedious stuff
4. Types of Operating
Softsmith Infotech
System
• Tasks
o Uni tasking (DOS)
o Multi tasking : All modern OS
• Users
o Single User: Mac, Windows
o Multi User: Linux
5. Types of Operating
Softsmith Infotech
System
• Single User, Single Task
o A user can do only one thing at a time
o MS DOS
• Single User, Multi Task
o Most commonly Used
o A user can do multiple tasks
o Windows, MAC
• Multi User, Multi Task
o Multiple users can do multiple tasks
o Linux, Unix
6. Types of Operating
System – Real Time OS
• Aims at executing real-time applications
• Objective: quick and predictable response to
events
• Event-driven or Time sharing design
• Event-driven system switches between tasks based
on their priorities or external events
• Time-sharing operating systems switch tasks based
on clock interrupts
Softsmith Infotech
7. Types of Operating
System – Distributed
• A distributed operating system manages a group of
independent computers
• Makes them appear to be a single computer
• Emerged because of development of networked
computers
• Example: Processor on one system and hard disk on
another
• Architecture can be implemented on Unix and
Linux
Softsmith Infotech
8. Types of Operating
System – Mobile
• Mobile OS operates Smartphone, Tablet and other
mobile devices
• They have features of Personal Computer
Operating System along with features to manage
other hardware
o Cellular, camera, Near field communication, infrared, etc.
• IOS, Android, Windows Phone, Firefox OS, etc
Softsmith Infotech
9. Softsmith Infotech
FOSS
• Free Open Source Software
• Free – Means Liberty and not related to Price or cost
• Open – Source code is available and any body can
contribute to the development. Organization
independent
• Example: Linux
11. OS - Wake up call
• When you turn on the power to a PC, the first
program that runs is a set of instructions kept in the
computer's read-only memory (ROM).
12. OS - Wake up call
• These instructions are
called Power on Self Test
(POST)
• It checks to make sure
everything is functioning
properly.
• It checks the CPU,
memory, and basic input-output
systems (BIOS) for
errors.
13. OS - Wake up call
• Once successful, the software will begin to
activate the computer's disk drives.
• The BIOS attempts to access the first sector of the
drive designated as the boot disk.
• The BIOS confirms there's a bootstrap loader, or
boot loader, in that first sector of the boot disk,
and it loads that boot loader into memory (RAM)
14. OS - Wake up call
• The bootstrap loader or boot loader is a small
program that has a single function: It loads the
operating system into memory and allows it to
begin operation.
• Once the boot loader is in memory, the BIOS hands
over its work to the boot loader, which in turn
begins loading the operating system into memory.
15. OS - Wake up call
• When the boot loader finishes its task, it turns control
of the PC over to the operating system.
• Then, the OS is ready for user interaction.
17. OS - Memory Storage and
Management
• Besides managing
hardware and software
resources on the system,
the OS must manage
resources and memory.
• Each process must have
enough memory in which
to execute, and It can
neither run into the memory
space of another process,
Nor be run into by another
process.
18. OS - Memory Storage and
Management
• The different types of memory in the system must be
used properly so that each process can run most
effectively.
o Cache
o Ram
o Disk
19. Cache Memory
• A section of a computer's memory which
temporarily retains recently accessed data in order
to speed up repeated access to the same data.
• It provides rapid access without having to wait for
systems to load.
• Very Costly
20. RAM
• Random access memory
(RAM) is the best known
form of computer
memory.
• RAM is considered
"random access" because
you can access any
memory cell directly if you
know the row and column
that intersect at that cell.
21. RAM
• The more RAM your computer has, the faster
programs can function.
• Remember, that if the power is turned off, then
all data left in RAM, that has not been saved to
the hard drive, is lost.
22. Virtual Memory
• Virtual Memory – a method
of using hard disk space to
provide extra memory. It
simulates additional RAM.
• In Windows, the amount of
virtual memory available,
equals the amount of free
RAM plus the amount of
disk space allocated to the
swap file.
23. Virtual Memory – Swap
File
• A swap file is an area of your hard disk that is set aside for
virtual memory. Swap files can be either temporary or
permanent.
25. Kernel
• Core or nucleus of an operating system
• Interacts with the hardware
• First program to get loaded when the system starts
and runs till the session gets terminated
• Different from BIOS which is hardware dependent.
• Kernel is software dependent
27. Kernel types
• Monolithic
o All OS related code are stuffed in a single
module
o Available as a single file
o Advantage : Faster functioning
• Micro
o OS components are isolated and run in their own
address space
o Device drivers, programs and system services run
outside kernel memory space
o Supports modularity
o Lesser in size
28. Shell
• Program that interacts with kernel
• Bridge between kernel and the user
• Command interpreter
• User can type command and the command is
conveyed to the kernel and it will be executed
29. Types of Shell
• Sh – simple shell
• BASH – Bourne Again Shell
• KSH – Korne Shell
• CSH – C Shell
• SSH – Secure Shell
• To use a particular shell type the shell name at the command
prompt.
o Eg $csh – will switch the current shell to c shell
• To view the available shells in the system, type cat /etc/shells
at the command prompt
• To view the current shell that is being used, type echo $SHELL
at the command prompt
31. Shell Scripting
• Shell scripting is the most useful and powerful
feature in Linux
o Minimizes typing of repetitive command
o Can schedule jobs to run in the system
o Can initiate back up activities for system administration
o Similar to batch files in DOS, but more powerful than Batch files
32. Working with shell script
• Open a file with extension .sh using vi editor
• We can type any number of commands that we
use to type at command prompt
• Save the file
• Execute the file
o sh file.sh
o ./file.sh (if the file has execution permission)
33. 4 Freedoms with FOSS
• Freedom to run the software anywhere
• Freedom to study how the programs work. i.e
source code will be accessible
• Freedom to redistribute copies
• Freedom to improve the software
• If a software has all these 4 freedoms, then it is a
FOSS
34. Copyleft
• Termed by Richard Mathew Stallman
• Copyleft statement:
o “Copying and redistribution are permitted in any medium provided this
notice is preserved.”
35. Linux
• Developed in 1991 by Linus Torvalds
• Used in most of the computers, ranging from
super computers to embedded system
• Multi user
• Multi tasking
• Time sharing
• Monolithic kernel
36. Free Software Foundation
• Founded by Richard Stallman in 1983
• Organisation that started developing copylefted
programs
• Project – GNU Project
o GNU Not Unix
o Recursive expansion
38. Interrupts
• Interrupt transfers control to the interrupt service routine
generally, through the interrupt vector, which contains
the addresses of all the service routines.
• Interrupt architecture must save the address of the
interrupted instruction.
• Incoming interrupts are disabled while another interrupt
is being processed to prevent a lost interrupt.
• A trap is a software-generated interrupt caused either by
an error or a user request.
• An operating system is interrupt driven.
39. Modes
• Superviser Mode
o Unrestricted access to hardware
• Protected Mode
o Everything Else
41. 41
PROCESSES
PROCESS CONCEPT:
A program is passive; a process active.
Attributes held by a process include
•hardware state,
•memory,
•CPU,
•progress (executing)
WHY HAVE PROCESSES?
Resource sharing ( logical (files) and physical(hardware) ).
Computation speedup - taking advantage of multiprogramming – i.e. example
of a customer/server database system.
42. 42
PROCESSES PROCESS STATE
New The process is just being put together.
Running Instructions being executed. This running process holds the CPU.
Waiting For an event (hardware, human, or another process.)
Ready The process has all needed resources - waiting for CPU only.
Suspended Another process has explicitly told this process to sleep. It will be
awakened when a process explicitly awakens it.
Terminated The process is being torn apart.
43. PROCESS CONTROL BLOCK:
CONTAINS INFORMATION ASSOCIATED WITH EACH
PROCESS:
It's a data structure holding:
PC, CPU registers,
memory management information,
accounting ( time used, ID, ... )
I/O status ( such as file resources ),
scheduling data ( relative priority, etc. )
Process State (so running, suspended, etc. is simply
a field in the PCB ).
43
PROCESSES Process State
44. PROCESSES
Scheduling
Components
The act of Scheduling a process means changing the active PCB pointed to by the CPU.
Also called a context switch.
A context switch is essentially the same as a process switch - it means that the memory,
as seen by one process is changed to the memory seen by another process.
See Figure on Next Page
SCHEDULING QUEUES:
(Process is driven by events that are triggered by needs and availability )
44
Ready queue = contains those processes that are ready to run.
I/O queue (waiting state ) = holds those processes waiting for I/O service.
45. 3:
Proce
sses
45
PROCESSES
Scheduling
Components
The CPU switching
from one process to
another.
46. Process Scheduling
• First Come – First Serve
o Long process may make others starve
• Shortest Job First
o Long process may starve
• Round Robin
o Lots of time used in switching
• Priority Scheduling
o Low priority Job Starve
48. Thread
• A thread of execution is the smallest sequence of
programmed instructions that can be managed
independently by an operating system schedule
• Processes are typically independent, while threads
exist as subsets of a process
49. Multitasking and
Multithreading
• Multitasking refers to a computer's ability to
perform multiple jobs concurrently
o more than one program are running concurrently,
e.g., UNIX
• A thread is a single sequence of execution
within a program
• Multithreading refers to multiple threads of
control within a single program
o each program can run multiple threads of control
within it, e.g., Web Browser
51. What are Threads Good
For?
• To maintain responsiveness of an application during
a long running task.
• To separate independent tasks and make the
execution faster.
o If a thread waits for I/O, other thread can execute in meanwhile
53. Cloud Computing
• A type of outsourcing of computer services
• Similar to the way in which the supply of electricity is
outsourced. Users can simply use it.
• They do not need to worry where the electricity is
from, how it is made, or transported. Every month,
they pay for what they consumed.
• Idea behind cloud is similar
54. Cloud Computing
• The user can simply use storage, computing power,
or specially crafted development environments,
without having to worry how these work internally.
• Cloud computing is a systems architecture model
for Internet-based computing.
• It is the development and use of computer
technology on the Internet
55. The Average Cloud user
• Connects to the cloud via the Internet
o Does computing tasks, or
o Runs applications, or
o Stores Data
57. The Cloud Requires
• An Internet connection
• An account - Created with a user name and a
password
• Agree to Terms
58. So what is the cloud?
Computing and software resources that are delivered on demand, as service.
(2013, January) A Walk in the Clouds. Cloud Computing, CDW-G Reference Guide., 3-5.
59. Cloud Computing – Simple Definition
Cloud Computing = Software as a Service
+ Platform as a Service
+ Infrastructure as a Service
+ Data as a Service
60. Cloud Computing – Simple Definition
Cloud Computing = Software as a Service
+ Platform as a Service
+ Infrastructure as a Service
+ Data as a Service
• Software as a Service (SaaS)
̵ From end user’s point of view
̵ Apps are located in the cloud
̵ Software experiences are delivered through the Internet
̵ Example: Google Docs
61. Cloud Computing – Simple Definition
Cloud Computing = Software as a Service
+ Platform as a Service
+ Infrastructure as a Service
+ Data as a Service
• Platform as a Service (PaaS)
̵ From developer’s point of view (i.e. cloud users)
̵ Cloud providers offer an Internet-based platform to
developers who want to create services but don't want to
build their own cloud
̵ Example: Web Hosting
62. Cloud Computing – Simple Definition
Cloud Computing = Software as a Service
+ Platform as a Service
+ Infrastructure as a Service
+ Data as a Service
• Infrastructure as a Service (IaaS)
̵ Cloud providers build datacenters
• Power, scale, hardware, networking, storage, distributed systems, etc
̵ Datacenter as a service
̵ Cloud users rent storage, computation, and maintenance from
cloud providers (pay-as-you-go; like utility)
63. Computer Storage
• Computers have internal or hard drive storage(C:
Drive)
• CPU has a drive for storing programs, documents,
pictures, videos, presentations, etc…
Standard Computer Tower
or Central Processing Unit
(CPU)
Inside the Computer
64. External Storage
Allows your content to become mobile
Save to the storage device
Take device to any compatible computer
Open and use content
CD/DVD Thumb Drive External Hard Drive
SD Card Micro SD Card
65. Networked Storage
• Multiple work stations talk to one unit that stores
information and data.
• Data is not saved to the C: drive, but to a network
drive
• Can retrieve the data stored to the network from
any of the connected workstations.
66. Cloud Storage
• Create an Account –
User name and
password
• Content lives with the
account in the cloud
• Log onto any
computer with Wi-Fi to
find your content
69. Advantages of Cloud Computing
• Lower computer costs:
o You do not need a high-powered and high-priced
computer to run cloud computing's web-based
applications.
o Since applications run in the cloud, not on the desktop
PC, your desktop PC does not need the processing
power or hard disk space demanded by traditional
desktop software.
o When you are using web-based applications, your PC
can be less expensive, with a smaller hard disk, less
memory, more efficient processor...
o In fact, your PC in this scenario does not even need a
CD or DVD drive, as no software programs have to be
loaded and no document files need to be saved.
69
70. Advantages of Cloud Computing
• Improved performance:
o With few large programs hogging your computer's
memory, you will see better performance from your
PC.
o Computers in a cloud computing system boot and
run faster because they have fewer programs and
processes loaded into memory…
• Reduced software costs:
o Instead of purchasing expensive software
applications, you can get most of what you need for
free-ish!
• most cloud computing applications today, such as the Google
Docs suite.
o better than paying for similar commercial software
• which alone may be justification for switching to cloud
applications.
70
71. Advantages of Cloud Computing
• Instant software updates:
o Another advantage to cloud computing is that you are no
longer faced with choosing between obsolete software and
high upgrade costs.
o When the application is web-based, updates happen
automatically
• available the next time you log into the cloud.
o When you access a web-based application, you get the
latest version
• without needing to pay for or download an upgrade.
• Improved document format compatibility.
o You do not have to worry about the documents you create
on your machine being compatible with other users'
applications or OSes
o There are potentially no format incompatibilities when
everyone is sharing documents and applications in the cloud.
71
72. Advantages of Cloud Computing
• Unlimited storage capacity:
o Cloud computing offers virtually limitless storage.
o Your computer's current 1 Tbyte hard drive is small
compared to the hundreds of Pbytes available in the
cloud.
• Increased data reliability:
o Unlike desktop computing, in which if a hard disk
crashes and destroy all your valuable data, a
computer crashing in the cloud should not affect the
storage of your data.
• if your personal computer crashes, all your data is still out
there in the cloud, still accessible
o In a world where few individual desktop PC users
back up their data on a regular basis, cloud
computing is a data-safe computing platform!
72
73. Advantages of Cloud Computing
• Universal document access:
o That is not a problem with cloud computing, because
you do not take your documents with you.
o Instead, they stay in the cloud, and you can access
them whenever you have a computer and an Internet
connection
o Documents are instantly available from wherever you
are
• Latest version availability:
o When you edit a document at home, that edited
version is what you see when you access the
document at work.
o The cloud always hosts the latest version of your
documents
• as long as you are connected, you are not in danger of having an
outdated version
73
74. Advantages of Cloud Computing
• Easier group collaboration:
o Sharing documents leads directly to better
collaboration.
o Many users do this as it is an important advantages of
cloud computing
• multiple users can collaborate easily on documents and
projects
• Device independence.
o You are no longer tethered to a single computer or
network.
o Changes to computers, applications and documents
follow you through the cloud.
o Move to a portable device, and your applications and
documents are still available.
74
75. Disadvantages of Cloud Computing
• Requires a constant Internet connection:
o Cloud computing is impossible if you cannot
connect to the Internet.
o Since you use the Internet to connect to both
your applications and documents, if you do not
have an Internet connection you cannot access
anything, even your own documents.
o A dead Internet connection means no work and
in areas where Internet connections are few or
inherently unreliable, this could be a deal-breaker.
75
76. Disadvantages of Cloud Computing
• Does not work well with low-speed connections:
o Similarly, a low-speed Internet connection, such as
that found with dial-up services, makes cloud
computing painful at best and often impossible.
o Web-based applications require a lot of bandwidth
to download, as do large documents.
• Features might be limited:
o This situation is bound to change, but today many
web-based applications simply are not as full-featured
as their desktop-based applications.
• For example, you can do a lot more with Microsoft
PowerPoint than with Google Presentation's web-based
offering
76
77. Disadvantages of Cloud Computing
• Can be slow:
o Even with a fast connection, web-based
applications can sometimes be slower than
accessing a similar software program on your
desktop PC.
o Everything about the program, from the interface
to the current document, has to be sent back
and forth from your computer to the computers
in the cloud.
o If the cloud servers happen to be backed up at
that moment, or if the Internet is having a slow
day, you would not get the instantaneous access
you might expect from desktop applications.
77
78. Disadvantages of Cloud Computing
• Stored data might not be secure:
o With cloud computing, all your data is stored on the
cloud.
• The questions is How secure is the cloud?
o Can unauthorised users gain access to your
confidential data?
• Stored data can be lost:
o Theoretically, data stored in the cloud is safe,
replicated across multiple machines.
o But on the off chance that your data goes missing,
you have no physical or local backup.
• Put simply, relying on the cloud puts you at risk if the cloud
lets you down.
78