0% found this document useful (0 votes)
164 views

Modern Operating System

The document discusses different types of operating systems and their key functions. It begins by explaining that an operating system organizes and controls hardware and software. It then describes different types of operating systems including command-line interfaces, graphical user interfaces, real-time operating systems, single-user and multi-user systems. The document also outlines several important functions of operating systems like managing processors, memory, storage, devices and providing interfaces for applications.
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
164 views

Modern Operating System

The document discusses different types of operating systems and their key functions. It begins by explaining that an operating system organizes and controls hardware and software. It then describes different types of operating systems including command-line interfaces, graphical user interfaces, real-time operating systems, single-user and multi-user systems. The document also outlines several important functions of operating systems like managing processors, memory, storage, devices and providing interfaces for applications.
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 75

MODERN OPERATING

SYSTEM
INTRODUCTION TO OPERATING SYSTEM

 The operating system (OS) is the first thing


loaded onto the computer -- without the
operating system, a computer is useless.

 operating systems can now be found on many


of the devices we use every day, from
cell phones to wireless access points.

 The purpose of an operating system is to


organize and control hardware and software so
that the device it lives in behaves in a flexible
but predictable way.
FACTS
Not all computers have operating systems. The
computer that controls the microwave oven in your
kitchen, for example, doesn't need an operating
system. It has one set of tasks to perform, very
straightforward input to expect (a numbered keypad
and a few pre-set buttons) and simple, never-
changing hardware to control.
For a computer like this, an operating system
would be unnecessary baggage, driving up the
development and manufacturing costs significantly
and adding complexity where none is required.
Instead, the computer in a microwave oven simply
runs a single hard-wired program all the time.
FACTS
 All desktop computers have
operating systems. The most common are the
Windows family of operating systems developed
by Microsoft, the Macintosh operating systems
developed by Apple and the UNIX family of
operating systems (which have been developed
by a whole history of individuals, corporations
and collaborators). There are hundreds of other
operating systems available for special-purpose
applications, including specializations for
mainframes, robotics, manufacturing, real-time
control systems and so on.
FACTS
 Operating system are made of portable code
instead of permanent physical circuits so that
changes can be made regularly as an when
required without scrapping the whole device
 For a desktop computer user, this means you

can add a new security update, system patch,


new application or even an entirely new
operating system rather than junk your
computer and start again with a new one
when you need to make a change.
Operating System Functions
Operating System Functions
 Processor management
 Memory management
 Device management
 Storage management
 Application interface
 User interface
OPERATING SYSTEM SYSTEM
COMPONENTS
STRUCTURES

These are the pieces of the system we’ll be looking at:

Process Management
Main Memory Management
File Management
I/O System Management
Secondary Management
Networking
Protection System
Command-Interpreter System

2: OS Structures 8
OPERATING SYSTEM SYSTEM
COMPONENTS
STRUCTURES
PROCESS MANAGEMENT

A process is a program in execution: (A program is passive, a process


active.)

A process has resources (CPU time, files) and attributes that must be
managed.

One (or more) threads are the schedulable entities within a process.

Management of processes includes:


· Thread Scheduling (priority, time management, . . . )
· Creation/termination
· Block/Unblock (suspension/resumption )
· Synchronization
· Communication
· Deadlock handling
· Debugging

2: OS Structures 9
OPERATING SYSTEM System
STRUCTURES Components
MAIN MEMORY MANAGEMENT
· Allocation/de-allocation for processes, files, I/O.
· Maintenance of several processes at a time
· Keep track of who's using what memory
· Movement of process memory to/from secondary storage.

FILE MANAGEMENT
A file is a collection of related information defined by its creator.
Commonly, files represent programs (both source and object forms) and
data.
The operating system is responsible for the following activities in
connections with file management:
• File creation and deletion.
• Directory creation and deletion.
• Support of primitives for manipulating files and directories.
• Mapping files onto secondary storage.
• File backup on stable (nonvolatile) storage media.
2: OS Structures 10
OPERATING SYSTEM System
STRUCTURES Components
I/O MANAGEMENT
· Buffer caching system
· Generic device driver code
· Drivers for each device - translate read/write requests into disk
position commands.

SECONDARY STORAGE MANAGEMENT


· Disks, tapes, optical, ...

· Free space management ( paging/swapping )

· Storage allocation ( what data goes where on disk )

· Disk scheduling

2: OS Structures 11
OPERATING SYSTEM
System
STRUCTURES Components
NETWORKING
· Communication system between distributed processors.
· Getting information about files/processes/etc. on a remote
machine.
· Can use either a message passing or a shared memory model.
How Do These All Fit
PROTECTION Together?
In essence, they all
· Of files, memory, CPU, etc. provide services for
· Means controlling of access each other.
· Depends on the attributes of the file and user

SYSTEM PROGRAMS
· Command Interpreters -- Program that accepts control
statements (shell, GUI interface, etc.)
· Compilers/linkers
· Communications (ftp, telnet, etc.) 2: OS Structures 12
Operating System Functions
 It manages the hardware and software
resources of the system. In a
desktop computer, these resources include
such things as the processor, memory, disk
space and more (On a cell phone, they
include the keypad, the screen, the address
book, the phone dialer, the battery and the
network connection).
Operating System Functions

 It provides a stable, consistent way for applications to deal


with the hardware without having to know all the details of
the hardware.
 A consistent application program interface (API) allows a
software developer to write an application on one computer
and have a high level of confidence that it will run on
another computer of the same type, even if the amount of
memory or the quantity of storage is different on the two
machines.
 Operating system must also ensure that the application
should continue to run even if there is a hardware upgrade,
data migrates on different device etc.
 One of the challenges facing developers is keeping their
operating systems flexible enough to run hardware from the
thousands of vendors manufacturing computer equipment.
Today's systems can accommodate thousands of different
printers, disk drives and special peripherals in any possible
combination.
Types of Operating System

 Based on Environment
◦ CUI
◦ GUI
 Based on Functions
◦ Real-time operating system
◦ Single-user, single task
◦ Single-user, multi-tasking
◦ Multi-user , multi-tasking
◦ Multiprocessing O/S
◦ Multithreading O/S
◦ Networking O/S
◦ Batch Processing O/S
◦ Distributed O/S
Command User Interface
 This operating system is totally command
dependent. One can work on this
environment only if they are familiar with the
respective O/S command
◦ Eg. MS-DOS
Graphical User Interface
 GUI - Short for Graphical User Interface, a GUI
Operating System contains graphics and
icons and is commonly navigated by using a
computer mouse. See the GUI definition for a
complete definition. Below are some
examples of GUI Operating Systems.
 System 7.x

Windows 98
Windows CE
Real Time Operating System
 RTOS is specially designed for embedded
environments such as consumer devices,
automobiles and robotics.
 A real-time operating system (RTOS) is an

operating system (OS) intended to serve


real-time application requests. It must be
able to process data as it comes in, typically
without buffering delays. Processing time
requirements (including any OS delay) are
measured in tenths of seconds or shorter.
RTOS
 RTOS) - Real-time operating systems are used to
control machinery, scientific instruments and
industrial systems.
 An RTOS typically has very little user-interface
capability, and no end-user utilities, since the
system will be a "sealed box" when delivered for
use.
 A very important part of an RTOS is managing
the resources of the computer so that a
particular operation executes in precisely the
same amount of time, every time it occurs.
EXAMPLE OF RTOS
 A common example of an RTOS is an HDTV receiver and display.
It needs to read a digital signal, decode it and display it as the
data comes in. Any delay would be noticeable as jerky or
pixelated video and/or garbled audio.
 Some of the best known, most widely deployed, real-time
operating systems
 LynxOS
 OSE
 QNX
 RTLinux
 VxWorks
 Windows CE
SINGLE USER SINGLE TASKING
 As the name implies, this operating system is
designed to manage the computer so that
one user can effectively do one thing at a
time. The Palm OS for Palm handheld
computers is a good example of a modern
single-user, single-task operating system.
 EG. MS-DOS
 An example of a this kind of O/S would be the
O/S of a basic mobile phone or an mp3 player.
 There can only be one user using the device and

that person is only using one of its applications


at a time
 An MP3 player contains a computer to handle all

of its functions. It has a small amount of


memory and a number of specialist silicon chips
. The operating system is installed in memory
and runs as soon as you switch on the device.
SINGLE USER MULTI-TASKING
 This is the type of operating system most people use
on their desktop and laptop computers today.
Microsoft's Windows and Apple's MacOS platforms
are both examples of operating systems that will let
a single user have several programs in operation at
the same time. For example, it's entirely possible for
a Windows user to be writing a note in a word
processor while downloading a file from the Internet
while printing the text of an e-mail message.
 Another word for multi-tasking is multiprogramming

◦ E.g. Windows 95.


Multi-User Multi-Tasking
 A multi-user operating system allows many
different users to take advantage of the
computer's resources simultaneously. The
operating system must make sure that the
requirements of the various users are
balanced, and that each of the programs they
are using has sufficient and separate resources
so that a problem with one user doesn't affect
the entire community of users. Unix, VMS and
mainframe operating systems, such as MVS,
are examples of multi-user operating systems.
Multi user, Multi-tasking
 Examples of this kind of O/S include various
versions of UNIX, LINUX, IBM’s z/OS, OS390,
MVS and VM
Networking Operating System
 Operating system that supports networking
 examples of a network O/S include Windows

Vista, Windows 8 and Mac O/S X , Unix, Linux


and all other mainframes O/S
 A network O/S system should have the

following features :-
◦ Deal with users logging on
◦ Maintain the network connection to the sercver
◦ Expand the file system to view folders on other
computers
◦ Provide security to separate user accounts from
each other
Batch Operating System
Distributed Operating System
 This is one of the modern operating system
 It is a O/S that supports distributed

computing
 Distributed systems allow users to share

resources on geographically dispersed hosts


connected via a computer network. Services
could be provided either through a Client-
Server Model or a Peer-to-Peer model
Distributed System
 A distributed system is a collection of loosely
coupled processors interconnected by a
communication network.
 The processors in a distributed system may

vary in size and function. They may include


microprocessors, workstations,
minicomputers and large general purpose
computer systems
 They are referred as sites, nodes, computers,

machines and hosts


Distributed System
 There are two types distributed System
◦ Parallel Computing
◦ Distributed Computing
 In the most simple form = Parallel Computing is a method where
several individual (autonomous) systems (CPU's) work in tandem to
resolve a common computing workload.
Distributed Computing is where several dis-associated systems are
working separately to resolve a multi-faceted computing workload.

 An example of Parallel computing would be two servers that share


the workload of routing mail, managing connections to an
accounting system or database, solving a mathematical problem,
etc....

 Distributed Computing would be more like the SETI (Search for extra-
terresterial intelligence). Program, where each client works a separate
"chunk" of information, and returns the completed package to a
centralized resource that's responsible for managing the overall
workload.

 If you think of ten men pulling on a rope to lift a load, that is parallel
computing. If ten men have ten ropes and are lifting ten different
loads from one place to consolidate at another place, that would be
distributed computing.
In Parallel Computing all processors have access to a shared memory.
In distributed computing, each processor has its own private memory
Advantages of Distributed Systems

 Resource Sharing
 Computation Speedup
 Reliability
 Communication
Resource Sharing
 If number of different sites are connected to
one another, then a user at one site may be
able to use the resources available at another.
For. E.g. a user at site A may be using a laser
printer located at site B
Computation Speed
 If a particular computation can be partitioned
into subcomputations that can run
concurrently then a distributed system allows
us to distribute the subcomputations among
various sites.

 There also exist automated load sharing in


which the distributed operating system
automatically moves jobs among several
sites that are lightly loaded.
Reliability
 If one site fails in a distributed system the
remaining sites can continue operating giving
the system better reliability.
 Data is replicated among several sites in a

distributed system so that even if one site


fails data still can be access from other sites.
Communication
 When several sites are connected to one
another by a communication network, the
users at different sites have the opportunity
to exchange information like pass message
among themselves, collaborate on project by
transferring the files of the project, logging in
to each other’s remote systems to run
programs and exchanging mail to coordinate
the work.
Distributed Operating System
 With the advent of computer networks, in which
many computers are linked together and are
able to communicate with one another,
distributed computing became feasible. A
distributed computation is one that is carried
out on more than one machine in a cooperative
manner. A group of linked computers working
cooperatively on tasks, referred to as a
distributed system, often requires a distributed
operating system to manage the distributed
resources
 The operating systems commonly used for
distributed computing systems can be broadly
classified into two types
–Network operating systems
-Distributed operating systems.
The three most important features commonly
used to differentiate between these two types of
operating systems are
o System image,
o Autonomy, and
o Fault tolerance capability.
 System image: Under network OS, the user
views the distributed system as a collection of
machines connected by a communication
subsystem. i.e the user is aware of the fact that
multiple computers are used. A distributed OS
hides the existence of multiple computers and
provides a single system image to the users.
 Autonomy: A network OS is built on a set of
existing centralized OSs and handles the
interfacing and coordination of remote
operations and communications between these
OSs. So, in this case, each machine has its own
OS. With a distributed OS, there is a single
system-wide OS and each computer runs part
of this global OS.
 Fault tolerance capability: A network operating
system provides little or no fault tolerance
capability in the sense that if 10% of the
machines of the entire distributed computing
system are down at any moment, at least 10% of
the users are unable to continue with their work.
On the other hand, with a distributed operating
system, most of the users are normally
unaffected by the failed machines and can
continue to perform their work normally, with
only a 10% loss in performance of the entire
distributed computing system.
Therefore, the fault tolerance capability of a
distributed operating system is usually very high
as compared to that of a network operating system
Special Purpose Systems
 Real Time Embedded Systems
 Multimedia Systems
 Handheld Systems
 Clustered Systems
Real Time Embedded Systems
 http://www.cs.uni.edu/~mccormic/RealTime/
what.html
◦ E.g. ABS(Antilock Breaking Systems) and Security
Systems in Automobiles
Multimedia Systems
 Supports multiple kinds of applications
◦ Multimedia applications : Streaming audio, video
games, etc.
◦ Traditional applications : Editors, compilers, web
servers, etc.
◦ Different applications have different requirements
For e.g. interactive applications like Editors,
compilers require low or average response time
◦ While soft real time applications like streaming
media , virtual games requires high response time

◦ Multimedia O/S divides resources according to


application requirements. E.g. 30 % of CPU to
streaming and 20% to http server,… etc.
 Multimedia data consist of audio and video files
as well as conventional files.
 These data differ from conventional data in that

multimedia data such as frame of video must be


delivered according to certain time restrictions
(for e.g., 30 frames per second)
 Multimedia applications may also include live

webcasts(broadcast over the world wide web) of


speeches or sporting events and even live
webcams that allow a viewer n Manhattan to
observe customers at a café in Paris.
 Multimedia applications also run on smaller

devices. Eg. Stock trader may have stock quotes


delivered wirelessly and in real time to his PDA.
Handheld Systems
 A mobile operating system, also referred to as
mobile OS, is the operating system that operates a
smartphone, tablet, PDA, or other digital
mobile devices. Modern mobile operating systems
combine the features of a personal computer
operating system with a touchscreen, cellular,
Bluetooth, WiFi, GPS mobile navigation, camera,
video camera, speech recognition, voice recorder,
music player, Near field communication, Infrared
Blaster, and other features.
 E.g. Android from google inc., Blackberry10 from

Blackberry, iOS from Apple Inc. Nokia Asha Platform


from Nokia, Symbian OS from Nokia etc.
Clustered Systems
 Cluster computing is a type of distributed computing. Distributed
computing just means coordinating a number of computers to
accomplish a single task. Cluster computing means the computers are
specifically organized just to work together to accomplish a single task.

For example, massively parallel "grid computing" projects like


seti@home and folding@home are examples of distributed computing
but they are not cluster computing. Here, the computers all work
together to accomplish a task, so this is distributed computing. But
they are not specifically arranged for this purpose (the arrangement is
haphazard and uncoordinated with computers all over the place being
randomly added and removed from the set working on the problem), so
they are not a cluster and this is not cluster computing.
     What is SETI@home?
SETI@home is a scientific experiment that uses Internet-
connected computers in the Search for Extraterrestrial
Intelligence (SETI). You can participate by running a free
program that downloads and analyzes radio telescope data.
E.g. http://setiathome.berkeley.edu/sah_about.php

 Folding@home (FAH or F@h) is a distributed computing


project for disease research that simulates protein folding,
computational drug design, and other types of
molecular dynamics. The project uses the
idle processing resources of thousands of personal computers
owned by volunteers who have installed the software on their
systems. Its primary purpose is to determine the mechanisms of
protein folding, which is the process by which proteins reach
their final three-dimensional structure, and to examine the causes
of protein misfolding.
Clustered System

 A clustered system uses multiple CPUs to complete a task. It is different from parallel
system in that clustered system consists of two or more individual systems tied
together. The clustered computers share storage and are closely linked via LAN
networking.
The clustering is usually performed to provide high availability. A layer of cluster
software runs on cluster nodes. Each node can monitor one or more nodes over the
LAN.

The monitored machine can fail in some cases. The monitoring machine can take
ownership of its storage. The monitoring machine can also restart applications that
were running on the failed machine- The failed machine can remain down but the users
will see a brief of the service.

The clustered system can be of the following forms:


• Asymmetric Clustering: In this form, one machine is in hot standby mode and other
machine is running the application. The hot standby machine performs nothing. It only
monitors the server. It becomes the active server if the server fails.
• Symmetric Clustering: In this mode, two or more machines run the applications.
They also monitor each other at the same time. This mode is more efficient because it
uses all available machines. It can be used only if multiple applications are available to
be executed.
Computing Environments
 Client Server
 Peer to Peer
 Web Based Computing
 Cloud Computing
Web Based Computing
 Embedded means that a computer is
embedded in the device - like a car or a
microwave oven.

Web-based computing puts the program on


the web site - like Google documents.

Traditional computing is a traditional


computer (keyboard, screen, etc.) with the
applications running, and the data stored, on
the computer.
 Where once all the talk about personal computing
was based on desktop, laptop or notebook
computers, all of which ran applications locally, now
it seems, the buzz is all about web based computers
- smartphones, tablets, Chromebooks and more
recently, the Surface Tablet from Microsoft.
 It's subtle, yet suddenly, inevitable. As surely as we
bought a personal computer before, now we're all
pondering the choices of web based computers,
even as some wonder what the difference is. The
short answer is that they are computers with weaker
processors and no hard drives that run applications
off the "cloud instead of locally and generally have
touch screens to make using them easier. They're
also generally lighter and smaller than so-called
"real" computers.
WHY WEB BASED COMPUTING

 That answer is just as easy - because they are cheaper.


Computers cost less if you don't have to have to include
a hard drive. They also cost less if you don't have to buy
and install software on them, and that is the real driving
force behind the switch. Less obvious is that users can
use more than one of them rather seamlessly. Consider
the new Surface Tablet from Microsoft. It runs a web-
computer based version of Windows that looks virtually
identical to Windows 8 which runs on real computers.
This means users don't have to learn two systems. But it
means more than that, it means that users can use web,
or cloud based apps instead of those they install locally,
e.g. Google Docs, Facebook, Flickr, etc. to create,
manipulate and store their work, which they can then
access using their phone, Chromebook, or any other
web based device.
EFFECT OF WEB BASED COMPUTING
 All of this is evident as reports of a slowdown in
sales of real computers contrasts with those
noting bigger numbers for iOS, Android and now
Windows 8/RT based machines, which are
essentially all the same breed: computers that do
little except allow users to browse the web,
access social media and play music or video files.
 It's the newest trend in personal computing, and
it's been going on for long enough now, that most
have heard the rumblings.
CLOUD COMPUTING
 In science, cloud computing is a synonym for
distributed computing over a network and means
the ability to run a program on many connected
computers at the same time.
 Cloud computing is a type of computing that
relies on sharing computing resources rather than
having local servers or personal devices to handle
applications.
 It is called cloud computing because the data and
applications exist on a “cloud” of WEB servers.
TRANSLATION PROGRAMS
 ASSEMBLERS
 COMPILERS
 INTERPRETERS
 LINKERS
ASSEMBLERS
 A program that translates programs from
assembly language to machine language.
 An assembler is a program that takes basic
computer instructions and converts them into
a pattern of bits that the computer's
processor can use to perform its basic
operations. Some people call these
instructions assembler language and others
use the term assembly language.
How it Works
 Most computers come with a specified set of very
basic instructions that correspond to the basic
machine operations that the computer can perform.
For example, a "Load" instruction causes the
processor to move a string of bits from a location
in the processor's memory to a special holding
place called a register. Assuming the processor has
at least eight registers, each numbered, the
following instruction would move the value (string
of bits of a certain length) at memory location 3000
into the holding place called register 8: L 8,3000
 The programmer can write a program using a sequence of
these assembler instructions.
 This sequence of assembler instructions, known as the
source code or source program, is then specified to the
assembler program when that program is started.
 The assembler program takes each program statement in
the source program and generates a corresponding bit
stream or pattern (a series of 0's and 1's of a given
length).
 The output of the assembler program is called the
object code or object program relative to the input source
program. The sequence of 0's and 1's that constitute the
object program is sometimes called machine code.
 The object program can then be run (or executed)
whenever desired.
 Today, assembler programming is used only
where very efficient control over processor
operations is needed. It requires knowledge
of a particular computer's instruction set,
however.
Compiler and Interpreters
 Historically, most programs have been written in
"higher-level" languages such as COBOL, FORTRAN,
PL/I, and C. These languages are easier to learn and
faster to write programs with than assembler
language. The program that processes the source
code written in these languages is called a compiler
.
 A compiler is a program that translates a source
program written in some high-level programming
language (such as Java) into machine code for some
computer architecture (such as the Intel Pentium
architecture). The generated machine code can be
later executed many times against different data
each time.
 A program that translates source code into
object code. The compiler derives its name from the
way it works, looking at the entire piece of source
code and collecting and reorganizing the
instructions. Thus, a compiler differs from an
interpreter, which analyzes and executes each line
of source code in succession, without looking at the
entire program. The advantage of interpreters is
that they can execute a program immediately.
Compilers require some time before an executable
program emerges. However, programs produced by
compilers run much faster than the same programs
executed by an interpreter.
 Because compilers translate source code into
object code, which is unique for each type of
computer, many compilers are available for
the same language. For example, there is a
FORTRAN compiler for PCs and another for
Apple Macintosh computers. In addition, the
compiler industry is quite competitive, so
there are actually many compilers for each
language on each type of computer. More
than a dozen companies develop and sell C
compilers for the PC.
Interpreters
 A program that executes instructions written in a high-level language. There are two
ways to run programs written in a high-level language. The most common is to
compile the program; the other method is to pass the program through an
interpreter.
 An interpreter translates high-level instructions into an intermediate form, which it
then executes. In contrast, a compiler translates high-level instructions directly into
machine language. Compiled programs generally run faster than interpreted
programs. The advantage of an interpreter, however, is that it does not need to go
through the compilation stage during which machine instructions are generated. This
process can be time-consuming if the program is long. The interpreter, on the other
hand, can immediately execute high-level programs. For this reason, interpreters are
sometimes used during the development of a program, when a programmer wants to
add small sections at a time and test them quickly. In addition, interpreters are often
used in education because they allow students to program interactively.
 Both interpreters and compilers are available for most high-level languages.
However, BASIC and LISP are especially designed to be executed by an interpreter. In
addition, page description languages, such as PostScript, use an interpreter. Every
PostScript printer, for example, has a built-in interpreter that executes PostScript
instructions.
Linkers
 Also called link editor and binder, a linker is a program
that combines object modules to form an executable
program. Many programming languages allow you to write
different pieces of code, called modules, separately. This
simplifies the programming task because you can break a
large program into small, more manageable pieces.
Eventually, though, you need to put all the modules
together. This is the job of the linker.
 In addition to combining modules, a linker also replaces

symbolic addresses with real addresses. Therefore, you


may need to link a program even if it contains only one
module.
Component of O/S
Kernel
Device Drivers
User Interface
System Utilities
Operating system Date first released Platform Developer

AIX and AIXL Unix and Linux history. Various IBM

Currently no AmigaOS
AmigaOS Amiga Commodore
history.

BSD Unix and Linux history. Various BSD

Caldera Linux Unix and Linux history. Various SCO

Corel Linux Unix and Linux history. Various Corel

Debian Linux Unix and Linux history. Various GNU

DUnix Unix and Linux history. Various Digital

DYNIX/ptx Unix and Linux history. Various IBM

HP-UX Unix and Linux history. Various Hewlett Packard

IRIX Unix and Linux history. Various SGI

Kondara Linux Unix and Linux history. Various Kondara

Linux Unix and Linux history. Various Linus Torvalds


MAC OS 8 Apple operating Apple Macintosh Apple
system history.

MAC OS 9 Apple operating Apple Macintosh Apple


system history.

MAC OS 10 Apple operating Apple Macintosh Apple


system history.

MAC OS X Apple operating Apple Macintosh Apple


system history.

Mandrake Linux Unix and Linux h Various Mandrake


istory.

MINIX Unix and Linux h Various MINIX


istory.
MS-DOS 1.x MS-DOS history. IBM Microsoft
MS-DOS 2.x MS-DOS history. IBM Microsoft
MS-DOS 3.x MS-DOS history. IBM Microsoft

MS-DOS 4.x MS-DOS history. IBM Microsoft

MS-DOS 5.x MS-DOS history. IBM Microsoft

MS-DOS 6.x MS-DOS history. IBM Microsoft

NEXTSTEP Apple operating sy Various Apple


stem history.

OSF/1 Unix and Linux hist Various OSF


ory.

QNX Unix and Linux hist Various QNX


ory.

Red Hat Linux Unix and Linux hist Various Red Hat
ory.

SCO Unix and Linux hist Various SCO


ory.

Slackware Linux Unix and Linux hist Various Slackware


ory.
Windows 3.X Microsoft Windo IBM Microsoft
ws history.

Windows 8 Microsoft Windo IBM Microsoft


ws history.

Windows 7 Microsoft Windo IBM Microsoft


ws history.

Windows 95 Microsoft Windo IBM Microsoft


ws history.

Windows 98 Microsoft Windo IBM Microsoft


ws history.

Windows CE Microsoft Windo PDA Microsoft


ws history.

Windows ME Microsoft Windo IBM Microsoft


ws history.

Windows NT Microsoft Windo IBM Microsoft


ws history.
Windows 98 Microsoft Windo IBM Microsoft
ws history.
Windows CE Microsoft Windo PDA Microsoft
ws history.
Windows ME Microsoft Windo IBM Microsoft
ws history.
Windows NT Microsoft Windo IBM Microsoft
ws history.
Windows Vista Microsoft Windo IBM Microsoft
ws history.
Windows XP Microsoft Windo IBM Microsoft
ws history.
Xenix Unix and Linux Various Microsoft
history.

You might also like