Slides 2 Flashcards
define multiprogramming
a different job in each memory partition, CPU execute other
jobs while waiting for the I/O of some jobs.
Essentially if their is idle time running program 1 where the CPU is not doing anything it’ll start on program 2 instead. then go back to working on program 1 after.
Different then multithreading (programs are not run at the same time.)
define spooling
read jobs from cards to
disk, load jobs from disk automatically, no more tapes
define time-sharing
multiple users using one computer simultaneously & interactively. Essentially is multiprogramming used to accommodate programs/tasks of multiple users. When one program is idle it switches to another user’s given program to run.
define batch systems
a bunch of programs are prepared ahead of time on punch cards and then run through the computer. punch cards are grouped together and placed in a specific sequence. This is known as a batch. no user interaction as the computer just kinda works through everything its given.
define OS as a resource manager
resource allocator
• multiplex resources
• multiplexintime
• eg. 3 programs trying to print to the same printer (spooling)
• eg. 2 programs trying to run at the same time (scheduling)
• multiplexinspace
• eg. 2 programs allocating memory
• manage conflicts among multiple programs or users
• control program
• controls execution of programs
• prevent errors and improper use
• OS is responsible for handling all interrupts and traps
define OS as a extended machine
An abstraction/generalization to managing the abstractions allow us to mask the ugly hardware and provide nice interfaces.
When was the first OS made?
IBM developed the first OS in the 60’s
What was notable about the 4th generation (1980 - present)?
personal computers • cheap mass-produced computers
• user friendly shells on top of OS
• Windows, Mac OS, Linux + GNOME / KDE