main | files
December 19th, 2024    

CISC 3320 3.0 17279 EW6
Main
Files
Syllabus
Links
Homeworks

Notes
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
Networ Intro
LAN Intro
Topologies
Comp Networks

Big Data
Security
Email

Misc
What is ELF/COFF?

Projects
Project 1
Project 2

Past Tests
Midterm
OldSample Midterm
OldMidterm
OldSample Final
OldMidterm Exam

Notes 0001

What is an Operating System?

(Read chapter 1 of the dinosaur book.)

An operating system is a program that acts as an intermediary between a user of a computer and the computer hardware.

The purpose of an operating is to provide an environment in which a user can execute programs. Primary goal of an operating system is to make the computer system convenient to use.

(Read chapter 1; again...)

Computer System can conceptually be broken up into four components: the hardware, the operating system, application programs, and users.

Hardware represents the CPU, memory, IO devices, etc.

Application programs represent software such as MS Word, GCC compiler, Web Servers, etc. It is the software the user uses.

Users are usually people sitting in front of their computers, but can also be other software or systems. (one machine can contact another, etc.)

The operating system is like the glue that ties everything together. It allows users to interact with their programs, and their programs to interact with each other and the hardware.

(paraphrased from the book)

We can view the operating system as a government. It provides the means for proper use of resources. Like the government, it performs no useful function by itself. It simply provides an environment within which other programs can do useful work.

Another view of an OS is a resource allocator. It manages the resources (memory, IO, etc.), and allocates them for programs that request them. The operating system resolves conflicts if several programs request the same resource.

Yet another view of OS is as a control program. It makes sure that rogue programs do not harm the computer system or cause errors.

(end paraphrase)

In general, operating systems have no single definition that works for all situations. (that's why DOJ had so much trouble fighting Microsoft on their inclusion of Internet Explorer into Windows 98; is it part of an operating system or not?)

The bare definition of the OS is that it's a program or library that makes using and programming computers simpler.

(Chapter 1 of the dinosaur book has a rather nice history of operating systems)

Brief Simplified History

Long time ago people decided to make computers. First `computers' where huge and inflexible, mostly built to do one specific job. Then Alan Turing and John Von Neumann (almost at the same time) came up with the concept of programmable computers. Now you could build one `universal computer', load up whatever program you wished, and it would run it.

Those machines were very hard to program, requiring writing code in binary 1s and 0s, and even modifying microcode. (very low level). These programs handled all their own memory management, input and output, etc.

Probably not too long after that, someone got an idea of reusing parts of the code for things like I/O. Before you knew it, a lot of the people were reusing each others code, and some standard libraries started to pop up.

From then on, these libraries have become a complete environment in which programs execute, and with the advent of faster hardware and high level programming languages, the complexity of these operating systems has increased substantially.

That's just about it.

After several generations of operating systems, important ones that have survived are UNIX and Windows (OS X, Linux, BSD, and Solaris are all UNIX). DOS, the shadow of Windows, is also still around in one form or another.

[In class: operating systems histories, how DOS got replaced by Windows, how Linux came about, etc., and how various new CPU architectures effected operating systems.]



































© 2006, Particle