An Introduction to Operating Systems
What is an operating system?
A piece of systems software that provides a convenient, efficient
environment for the execution of user programs.
It's probably the
largest and most complex program you'll ever run!
Why do we need an operating system?
- The user's viewpoint:
to provide the user interface, command
interpreter, and directory structure, and to execute application
programs (word processor, email client, web browser, MP3 player).
- The programming environment viewpoint:
to enhance the bare machine,
to provide utility programs (such as compilers, editors, filters), to
provide high-level input and output (I/O), to structure information
into files, and to improve access to memory (size, protection,
sharing).
- The efficiency viewpoint:
to replace the (long departed) human
operator, to schedule tasks, to efficiently store and retrieve data,
and to invoke and share programs.
- The economic viewpoint:
to allow simultaneous use and scheduling of resources, including
disk-bound data and expensive peripherals.
Traditionally, we would summarize an operating system's goals as making
"the system" convenient
to use and scheduling its resources efficiently and fairly.
In addition,
it must support hardware and software not yet developed.
CITS2002 Systems Programming, Lecture 3, p1, 29th July 2024.
|