OPERATING
SYSTEM
FUNDAMENTALS
SCHOOL OF COMPUTING RIEL A. GOMEZ
BASIC INFORMATION
• Professor's Name: Riel A. Gomez
• Office: 8th Floor (Faculty Room)
• Email:
riel.gomez@iacademy.edu.ph
Introduction
BASIC INFORMATION
• Absences
– A student will be given a grade of FA (failure due to
absences) for a subject if he/she is absent for more
than three (3) times (for classes that meet once a
week).
– One late will be considered as a half-absence.
– A student who leaves the class before the end of the
class period will be considered as absent for that
meeting.
Introduction
BASIC INFORMATION
• The following rules will be strictly enforced during
classes:
‒ Cell phones, tablets, and other gadgets are not
allowed while class is in session. They must be kept
hidden.
‒ 100% attention is required from you. Direct questions
to the instructor, not the seatmate.
‒ No sleeping in class.
• You may eat and drink while in class but observe
cleanliness.
Introduction
BASIC INFORMATION
• Class Requirements : 4 or 5 Major
Exams. Final grade is just the
average of the major exams.
• Cancel the lowest major exam.
• A difficulty factor is given for each
exam (to raise the score).
Introduction
BASIC INFORMATION
• If you missed an exam:
‒ you have one (1) week to take it (except for the
last exam)
‒ send me an email to schedule your make-up
exam
‒ no advanced exams will be given
‒ there will be no difficulty factor for missed
exams.
• Passing is 70%. Absolutely no extra work will be
given for those who will fail or those who want a
higher grade.
Introduction
SYSTEM SOFTWARE VS. APPLICATION SOFTWARE
• Fundamental Truth
Computers cannot
do anything
without software.
Operating System Fundamentals
SYSTEM SOFTWARE VS. APPLICATION SOFTWARE
• Software is defined as a program or set of
instructions that tells the computer what to do.
• Two Classes of Software:
1. System Software. Programs that control the
basic operations of a computer system such
as saving files in a storage device like a hard
disk or floppy disk, printing files, accepting
input from a keyboard or mouse, executing
programs, etc.
2. Application Software. Programs that are
used to accomplish specific or specialized
tasks for computer users such as creating
and editing documents (word processing),
making graphic presentations, or listening to
music.
Operating System Fundamentals
SYSTEM SOFTWARE VS. APPLICATION SOFTWARE
A device driver is a system software
that tells a computer how to control a
particular type of hardware device that
is attached to it.
Operating System Fundamentals
SYSTEM SOFTWARE VS. APPLICATION SOFTWARE
• Software is defined as a program or set of
instructions that tells the computer what to do.
• Two Classes of Software:
1. System Software. Programs that control the
basic operations of a computer system such
as saving files in a storage device like a hard
disk or floppy disk, printing files, accepting
input from a keyboard or mouse, executing
programs, etc.
2. Application Software. Programs that are
used to accomplish specific or specialized
tasks for computer users such as creating
and editing documents (word processing),
making graphic presentations, or listening to
music.
Operating System Fundamentals
SYSTEM SOFTWARE
• System software provide basic
functionality to computers thus
making them usable.
Consider the following examples:
1. When a user types a character
in a keyboard, it is system
software that tells the
computer to accept the input
and then output that character
to the monitor.
Operating System Fundamentals
SYSTEM SOFTWARE
2. Whenever a user wants to save
a file in a hard disk, it is system
software that:
• locates free space in the
disk,
• writes the file to the disk,
• and modifies the disk
directory system to reflect
the existence of the file
that was just saved.
Operating System Fundamentals
SYSTEM SOFTWARE
3. Whenever a user
wants to print a
document, it is
system software
that sends the
document to the
printer and tells the
printer how to print
the document.
Operating System Fundamentals
SYSTEM SOFTWARE
4. When a user wants to
execute a certain
program, it is the
system software that
locates that program in
the hard disk, loads it Secondary CPU
into the computer's Memory
(Fixed Disk)
main memory, and
then execute it.
• It can therefore be said Primary or Main Memory
that system software
supports all application
programs.
Operating System Fundamentals
SYSTEM SOFTWARE
Computer User
computer user instructs
the application program
to print a document
Application
Software
(Microsoft Word)
How System
application software
makes a request to the
system software to print
Software Supports
the document
Application Software
System Software
(Operating System,
Device Drivers)
system software controls
the printer as the
document is printed
Hardware
(Computer, Printer)
Operating System Fundamentals
OPERATING SYSTEM DEFINITION
• An operating system is a
system software that allows
users or the application
programs they are using to
interact with the computer
hardware in an
easy/convenient and
efficient manner.
• The operating system must
be executed by the computer
upon power on.
Operating System Fundamentals
WHAT DOES AN OPERATING SYSTEM DO?
• Major Functions of an
Operating System:
1. It performs hardware
abstraction or resource
abstraction.
The operating system
should make the computer
easy and convenient to use
by hiding the "ugly" details
of using a computer.
Operating System Fundamentals
WHAT DOES AN OPERATING SYSTEM DO?
2. It performs resource
management or
resource allocation.
No application program
may execute unless it
has been allocated the
resources (CPU,
CPU,
memory, I/O devices)
devices it
needs and only the
operating system has
the authority to do this.
Operating System Fundamentals
WHAT DOES AN OPERATING SYSTEM DO?
3. It takes care of
program execution.
The operating
system is
responsible for
executing and
controlling programs
for computer users.
Operating System Fundamentals
THE KERNEL AND THE SHELL
• An operating system has two parts:
the kernel and the shell.
• The kernel is the heart and soul of
the operating system.
The kernel contains the major
components of the operating
system.
The kernel is the one responsible of
controlling the computer hardware
and performing many of the
services being offered by the
operating system.
Operating System Fundamentals
THE KERNEL AND THE SHELL
The hardware components of a
computer system cannot be accessed
directly by a user or an application
program.
To be able to access hardware devices,
users and application programs have to
use the services provided by the kernel
by making the appropriate requests.
These requests are called system calls.
The kernel is the part of the operating
system that is always in main memory,
always ready to act in case its services
are needed.
Operating System Fundamentals
THE KERNEL AND THE SHELL
• The shell is the
part of the
operating system Computer User
that serves as
the interface
between users
and the kernel. Shell
Kernel Operating System
It is often called
the command
interpreter.
Operating System Fundamentals
THE KERNEL AND THE SHELL
• The shell facilitates
communication
between the user
of the computer Computer User
and the kernel of user makes a request to the
the operating operating system through the shell
system.
Shell
To make use of the
services provided Kernel Operating System
by the kernel, users
would have to enter
commands via the
shell.
Operating System Fundamentals
THE KERNEL AND THE SHELL
• The shell would Computer User
then accept the
command given, shell checks
user makes a request to the
operating system through the shell
check its validity user’s request for
validity and
and correctness, correctness and
then passes it to
the kernel
Shell
and then send it
to the kernel for Kernel Operating System
execution. kernel performs
requested service
Operating System Fundamentals
THE KERNEL AND THE SHELL
• Two Types of Shells
The command-line
interface requires
users to type the
commands at a
prompt.
This implies that users
should memorize the
commands used. This type of shell is seen in the
old DOS and many Linux
systems.
Operating System Fundamentals
THE KERNEL AND THE SHELL
The more popular
operating systems now use
the graphical user
interface (GUI).
In this type of shell, users
enter commands by either
using drop-down menus or
by clicking or tapping icons
(Windows, Mac OS,
Android, IOS).
Operating System Fundamentals
MORE ON SYSTEM CALLS
• The services provided by the
kernel can be accessed by
making the appropriate
requests called system calls.
• These calls are generally
available as routines written in
C and C++ although certain
low-level tasks (for example,
tasks where hardware must be
accessed directly), may need
to be written using assembly-
language instructions.
Operating System Fundamentals
MORE ON SYSTEM CALLS
• Example: copy data from
one file into another file
1. Acquire input file name
a. Write prompt to
screen
(system call)
b. Accept input from
keyboard
(system call)
Operating System Fundamentals
MORE ON SYSTEM CALLS
• Example: copy data from
one file into another file
2. Acquire output file
name
a. Write prompt to
screen
(system call)
b. Accept input from
keyboard
(system call)
Operating System Fundamentals
MORE ON SYSTEM CALLS
• Example: copy data from
one file into another file
3. Open input file
(system call)
If file does not exist or
is access-protected:
a. display message
(system call)
b. abort program
(system call)
Operating System Fundamentals
MORE ON SYSTEM CALLS
• Example: copy data from
one file into another file
4. Create output file
(system call)
If file already exists:
a. display message
(system call)
b. abort program
(system call)
Operating System Fundamentals
MORE ON SYSTEM CALLS
• Example: copy data from
one file into another file
5. Loop
a. read from input file
(system call)
b. write to output file
(system call)
until read fails
Operating System Fundamentals
MORE ON SYSTEM CALLS
• Example: copy data from
one file into another file
5. Close input and output
files
(system call)
6. Display completion
message
(system call)
7. Terminate program
(system call)
Operating System Fundamentals
MORE ON SYSTEM CALLS
• Most programmers never see
this level of detail.
• Typically, application
developers design programs
according to an application
programming interface (API).
• The API specifies a set of
functions that are available to
an application programmer,
including the parameters that
are passed to each function
and the return values the
programmer can expect.
Operating System Fundamentals
MORE ON SYSTEM CALLS
• Two of the most common APIs available to application
programmers are the Win32 API for Windows systems, the
POSIX API for POSIX-based systems (which includes virtually
all versions of UNIX, Linux, and MAC OS X).
• Behind the scenes, the functions that make up an API
typically invoke the actual system calls on behalf of the
application programmer.
• For example, the Win32 function CreateProcess() (for
creating processes) actually calls the NTCreateProcess()
system call in the Windows Kernel.
Operating System Fundamentals
OPERATING SYSTEM SERVICES
• Key services provided by the
operating system to users and
application programs:
1. Program Execution. It is Secondary CPU
responsible for locating a Memory
(Fixed Disk)
program in secondary
storage, loading it into the
computer's main memory,
and then executing it.
Primary or Main Memory
It also controls the And if there are several
execution of programs to programs running
prevent any unauthorized simultaneously, the OS takes
and improper access to I/O care of scheduling the use of
devices or memory the CPU among these
locations. programs.
Operating System Fundamentals
OPERATING SYSTEM SERVICES
2. Access to I/O Devices. It is
responsible for providing
users and programs access
to I/O devices by
performing input and
output operations.
Example of such operations
are printing documents,
getting data from the
keyboard or mouse, etc. for
them.
Operating System Fundamentals
OPERATING SYSTEM SERVICES
3. File System Management. It is
responsible for providing
controlled access to files stored
in secondary storage.
It will perform all operations on
files (file creation and deletion,
editing, archiving, renaming,
changing file attributes, etc.) for
users and programs.
In a system with multiple users,
the operating system provides
protection against unauthorized
file access.
Operating System Fundamentals
OPERATING SYSTEM SERVICES
4. System Access. In a computer
system with multiple users,
the operating system will
prevent any unauthorized
access to the system by
implementing a log-in
mechanism.
The operating system may give
limited access or deny access
completely to invalid users.
Operating System Fundamentals
OPERATING SYSTEM SERVICES
5. Error Handling. It must be able to detect the
presence of any errors within the computer
system and take the appropriate actions to
resolve them.
Errors may be hardware-oriented (a memory
chip failing, a keyboard malfunctioning, a
printer running out of paper, etc.).
Or it may be software-oriented (an instruction
causing an arithmetic overflow or a divide-by-
zero error, a program accessing a memory
location assigned to another program, a
program entering into an infinite loop, etc.).
Operating System Fundamentals
OPERATING SYSTEM SERVICES
6. Communication. A computer may be running
several programs simultaneously and these
programs may need to communicate with one
another by sharing data.
Processes that communicate with one
another are often called cooperating
processes.
For example, a computer may be running
Chrome to download a PDF file while at the
same time running Acrobat Reader to display
the file.
It is the operating system's job to facilitate the
communication among these processes.
Operating System Fundamentals
CORE COMPONENTS OF AN OPERATING SYSTEM
• Core components of an operating
system:
1. Process Manager. This
component is also called the
Process Scheduler or CPU
Scheduler.
Since there may be more
programs running than there
are CPUs, the Process
Manager must determine
which among the programs
gets to execute first and for
how long.
Operating System Fundamentals
CORE COMPONENTS OF AN OPERATING SYSTEM
2. Memory Manager. The memory
manager is responsible for making sure
that programs are given sufficient
memory space to execute effectively.
It must know which areas in memory are
being used by running programs and
which areas are available for allocation to
other programs.
It must also provide protection to make
sure that a process does not access the
memory space of other processes
without authorization.
Operating System Fundamentals
CORE COMPONENTS OF AN OPERATING SYSTEM
3. File Manager. The file manager
organizes the files stored in
secondary storage and presents an
interface to the users so they can
conveniently access these files.
It provides functions for creating,
deleting, modifying, copying,
moving, archiving, renaming, and
viewing files and directories or
folders.
It also ensures that all files have
adequate protection from
unauthorized access.
Operating System Fundamentals
CORE COMPONENTS OF AN OPERATING SYSTEM
4. I/O Manager. This component is
also known as the Device Manager.
It manages the different I/O devices
of the entire computer system.
The I/O manager takes care of
granting user requests to use I/O
devices.
It also takes care of resolving
conflicts wherein two or more
programs are trying to access the
same device at the same time.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
Serial Processing (1st Generation)
• During the late 1940s and
early 1950s, computers were
massive, expensive, slow, and
very primitive. These
mainframe computers have
the following characteristics:
1. There were no operating
systems, so these
computers were "bare"
machines. Computer
users have to
communicate directly with
the hardware.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
2. These computers can only
be used by one person at
a time. Each programmer
is usually allocated a
specific schedule to use
the machine.
So programs or computer
jobs have to be processed
one after another, in a
series or in a sequence.
This is called serial
processing.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
3. There were no keyboards so
user commands are entered
by using toggle switches.
Computers only understand
binary (0s and 1s) so
commands were given by
turning on or off certain
switches.
There were no display
monitors so the computers
communicated with the user
in binary through display
lights. Users would then have
to manually decode the
meaning of the output.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
4. Programs were written
in machine language
and were entered into
the computer by using
punched cards.
Punched cards were
made of thin cardboard
and information is
encoded into them by
punching little square
holes in predefined
positions.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
For example:
int x;
i = 01101001
n = 01101110
t = 01110100
space = 00100000
x = 01111000
; = 00111011
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
These holes
represent
characters or
numbers and
were punched
by using a
keypunch.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
Usually, one card is
needed to store a
line of instruction.
So it is not
uncommon to see a
programmer carrying
his program in a box
of about two
thousand punched
cards (for one
program or source
file).
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
A punched card reader
(connected to the
computer) reads the
program encoded in
the punched cards,
convert it to electronic
form (0s and 1s), and
load it into the
computer's main
memory.
The program is now
ready to be compiled.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
If the program had no
errors, it will be executed
and the results printed on
paper.
If there were errors during
the compilation, the
programmer would have
to go back to his office
and fix those errors.
Punched cards containing
errors would have to be
replaced.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
5. There were no fixed or
hard disks. So every
time a programmer
wants to run his
program again, he
would have to reload
his punched cards.
In fact, all other
programs (compilers,
assemblers, linkers,
loaders, etc.) are also
stored in punched
cards stored in
separate boxes.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
So to run a compiler, the
programmer would have to
1. borrow the box containing
the punched cards of the
compiler,
2. load them into the
computer's memory using
the punched card reader,
3. and then execute the
compiler.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
• The following is the sequence of activities a programmer or computer operator
has to go through to execute a program:
1. The programmer must first load the compiler by getting the punched cards
of the compiler. The compiler can now be loaded into the computer’s main
memory by using the punched card reader.
2. The programmer must now get the punched cards of the program and load
it into the computer's main memory by using the punched card reader
again.
3. The programmer will now instruct the computer to run the compiler by
using the toggle switches. His program will now be converted into an
executable file.
4. The computer then executes the program.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
• Take note that there is a significant
amount of set-up time involved,
particularly in steps where the
programmer has to put the punched cards
into the punched card reader (steps 1 and
2).
• During these times, the CPU of the
computer is idle. Therefore, serial
processing is highly inefficient.
• CPU utilization, which is the percentage
of time when the CPU is doing useful
work, is very low.
• Considering the very high cost of
computers during this period,
maximization of CPU utilization is of the
utmost importance.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
Batch Processing (2nd Generation)
• One solution to the inefficient use of computers is to group similar
jobs and process them together as a batch. This is called batch
processing and it started in the mid 1950s (until the mid 1960s).
• For example, assume that several COBOL programmers want to
compile their programs on a particular day. Instead of letting
these programmers use the computer one at a time, the computer
operator may get their punched cards and compile their programs
as a group.
This means that the computer operator will load the COBOL
compiler only once and then compile all the programs. Therefore,
set-up time was reduced thereby increasing CPU utilization.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
• To implement batch
processing, the computer
operator would gather
the punched card decks
from the users and stack
them one on top of one
another and put them in
the punched card reader.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
• Each deck was
separated from one
another by special
punched cards called
control cards.
• These control cards
gave information or
instructions to the
computer how the
job following it is to
be carried out.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
• To help the computer interpret the instructions contained in the
control cards, a new system program was developed. The
monitor is a system software whose main function is to carry out
the instructions in the control cards.
• It ensures that the transition from one job to next is performed
automatically (automatic job sequencing).
• Since there is no human intervention, then there is no idle time
between jobs in a batch thus increasing further the utilization of
the computer.
• The monitor is considered by many as the first primitive operating
system. Like modern operating systems, the monitor is always
resident in the computer's main memory. Hence it is sometimes
referred to as the resident monitor.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
Multiprogramming and
Multitasking Systems (3rd
Generation)
• Although batch processing
has improved computer
performance in terms of
utilization and efficiency, it
is still a uniprogramming
environment wherein one
job or program is executed
at any one time.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
• Once a program performs
an I/O operation (such as
printing a document,
reading or saving a file from
or to a magnetic tape,
getting data from the
punched card reader, etc.),
the CPU is idle.
• The CPU has to wait until
the completion of an I/O
operation before it can
resume executing the
program.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
This problem is
compounded by the fact
that majority of I/O
devices are very slow
compared to the CPU.
So there is still a
substantial amount of
CPU idle time present
(CPU utilization goes
down again).
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
• As a solution, when the program being executed
by the CPU requests for an I/O operation, the
operating system may let the CPU start executing a
second program instead of letting it be idle while
waiting for the I/O request to finish.
• If the second program performs an I/O operation,
then the operating system will schedule the CPU to
execute a third program.
• This continues until eventually the first program
finishes its I/O operation and gets the CPU back.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
• This is known as
multiprogramming.
Multiprogramming
can be defined as the
concurrent execution
of two or more
programs by a single
CPU.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
2
Program 1 Program 2 Program 3
When program 2
1 performs an I/O
operation, the CPU
When program 1 starts executing
performs an I/O program 3
operation, the CPU
starts executing
program 2
Program 2
performs I/O
operation
Program 1
performs I/O
operation
Program 3
performs I/O
operation
When program 3 performs an I/O operation,
the CPU may start executing another program
(if there are other programs waiting for
execution) or go back to program 1 if its I/O
operation has finished
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
• Multiprogramming created The operating
new issues that operating Operating
system usually
systems and computer occupies the
System
first part of
hardware designers must main memory
resolve. User
Process 1
• In order for a CPU to do
multiprogramming, there has
to be several processes present User
Process 2
in the computer's main
memory.
User
Process 3
In other words, main memory
is now shared by a number of
processes, including the Main Memory
operating system itself.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
Time-sharing Systems (3.5rd
Generation)
• By the very early-1970s, the costs
of computer peripherals were
going down.
• This allowed companies to easily
purchase video display terminals
(monitors with keyboards) which
could be connected to
mainframes and/or
minicomputers so that several
users now can use these
computers at the same time.
• So many users are now on-line or directly connected to the computer when they
compile and execute their programs. This is called on-line processing.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
• And because the users are now interacting with the computer, the
computer system must respond right away to all user requests.
• Because of multiprogramming, the CPU might be tied up in
executing a particular program thus preventing it from attending
to the needs of the users.
• Recall that in multiprogramming, once the CPU starts executing a
process, it will continue to do so until the program requests for an
I/O operation. Only at such time can the CPU execute user
commands.
• So it will appear as if the computer is too slow to take care of the
needs of the users.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
• To solve this problem, operating
systems during this time were
designed to be time-sharing or
multitasking operating systems.
• Time-sharing is simply an
extension of multiprogramming.
The operating system assigns the
CPU to a user or to a process for a
certain time period, usually in the
range of a few milliseconds.
• This time period is called the time
slice or time quantum.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
• When this time quantum is
consumed, the operating system
assigns the CPU to another user or
process. It keeps on repeating this
until eventually, the CPU goes back
to the first user or process.
• This time-slicing is done so fast that
each user feels as if they have their
own dedicated machine.
• However, once the number of users
increases over a certain threshold,
the entire computer system slows
down.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
• In multiprogramming, the CPU will continue
executing a program until the program requests for
an I/O operation.
• In multitasking, the CPU will continue executing a
program until the program requests for an I/O
operation or when the time slice expires, whichever
comes first.
• Many of the modern operating systems such as
Windows, Linux, and MacOS are multitasking
operating systems.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
Personal Computing (4th Generation)
• By the 1980s, personal computers are slowly
gaining popularity.
• Although these computers were very similar
to the minicomputers developed in the third
generation, personal computers cost a very
small fraction of what minicomputers cost.
• A personal computer was so affordable that it
made it possible for a single individual could
be able to own one for personal use while
minicomputers where still at such a high price
that only corporations could afford to have
them.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
• One of the major factors in the creation
of personal computing was the birth of
Microsoft and the Windows operating
system.
• The windows Operating System was
created in 1985 when Paul Allen and Bill
Gates had a vision to take personal
computing to the next level.
• They introduced the MS-DOS in 1981
although it was effective it created much
difficulty for people who tried to
understand its cryptic commands.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
• Microsoft introduced
an operating
environment named
Windows on
November 20, 1985,
as a graphical
operating system shell
for MS-DOS in
response to the
growing interest in
graphical user
interfaces (GUIs).
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
• Windows went on to become the largest operating system
used in technology today with releases of Windows 95,
Windows XP, Windows Vista, Windows 7, Windows 8, and
Windows 10.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
• Along with Microsoft, Apple is the other major operating system
created in the 1980's.
• Steve Jobs, co founder of Apple, created the Apple Macintosh
which was a huge success due to the fact that it was so user
friendly. Windows development throughout the later years were
influenced by the Macintosh and it created a strong competition
between the two companies.
Operating System Fundamentals
HISTORY OF OPERATING SYSTEMS
• Today all of our
electronic devices
run off of
operating systems,
from our
computers and
smartphones, to
ATM and motor
vehicles.
• And as technology
advances, so do
operating systems.
Operating System Fundamentals