Development of operating systems
In early computers, the user typed programs
onto punched tape or cards, from which they
were read into the computer. The computer
subsequently assembled or compiled the
programs and then executed them, and the
results were then transmitted to a printer. It
soon became evident that much valuable computer
time was wasted between users and also while
jobs (programs to be executed) were being read
or while the results were being printed. The
earliest operating systems consisted of
software residing in the computer that
handled "batches" of user jobs--i.e.,
sequences of jobs stored on magnetic tape that
are read into computer memory and
executed one at a time without intervention by
user or operator. Accompanying each job in a
batch were instructions to the operating
system (OS) detailing the resources needed by
the job--for example, the amount of CPU time,
the files and the storage devices on which
they resided, the output device, whether the
job consisted of a program that needed to be
compiled before execution, and so forth. From
these beginnings came the key concept of an
operating system as a resource allocator. This
role became more important with the rise of
multiprogramming, in which several jobs reside
in the computer simultaneously and
share resources--for example, being allocated
fixed amounts of CPU time in turn. More
sophisticated hardware allowed one job to be
reading data while another wrote to a printer
and still another performed computations. The
operating system was the software that managed
these tasks in such a way that all the jobs
were completed without interfering with one
another.
Further work was required of the operating
system with the advent of interactive
computing, in which the user enters commands
directly at a terminal and waits for the
system to respond. Processes known as terminal
handlers were added to the system, along with
mechanisms like interrupts (to get the
attention of the operating system to handle
urgent tasks) and buffers (for temporary
storage of data during input/output to make
the transfer run more smoothly). A large computer
can now interact with hundreds of users
simultaneously, giving each the perception of
being the sole user. The first personal
computers used relatively simple operating
systems, such as some variant of DOS (disk
operating system), with the main jobs of
managing the user's files, providing access to
other software (such as word processors), and
supporting keyboard input and screen display.
Perhaps the most important trend in operating
systems today is that they are becoming
increasingly machine-independent. Hence, users
of modern, portable operating systems like
UNIX, Microsoft Corporation's Windows NT, and
Linux are not compelled to learn a new
operating system each time they purchase a
new, faster computer (possibly using a
completely different processor).
CALL
Glue: Scripting Languages for Computer Aided
Language Learning Systems - Text
processing using the computer programming
languages Perl, Tcl/Tk, and Python, Perl
scripts for extracting sentences out of HTML
web pages.
Optimum
Designs Inc. - Manufacturers computer
based digital oscilloscopes.
Australian
Seniors Computer Clubs Association (ASCCA)
- Public benevolent institution offering
barrier-free information, advice on starting a
club, tips and hints for seniors and people
with disabilities.
Computer
and Telecommunications Equipment Recycling
- Links to companies, associations and
publications related to the computer and
telecommunications recycling industry in
general.
Mint
Computer - Buys, sells, rents and leases
new and refurbished midrange hardware,
peripherals and printers.
Savvy
Shopping: Personal Computer Buying Guide -
Article discusses the major computer
components and advises what an average user
needs to purchase. Site also offers coupons.
|