intro - Computer Science 322 Operating Systems Mount...

Info iconThis preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon
Computer Science 322 Operating Systems Mount Holyoke College Spring 2008 Topic Notes: Introduction and Overview Welcome to CS 322! What do you think of when you talk about an operating system? (“I installed a new operating system”, “Windows is my least favorite operating system”, “That must be a bug in the operating system”) What do you expect to learn in a course about operating systems? OS topics are always in the news – lots of current developments in the OS world. Things change quickly. This course is partially reinvented each time around, though the concepts remain similar. Where This Fits In You learned high-level language programming in your introductory and data structures courses. You learned about hardware and assembly language in 211. How to get from circuits to CPUs and memory. Compilers and programming languages teach you about how high-level languages let you program the hardware in a more convenient way. Many of the things that fit between those (compiled) high-level language programs and the hard- ware are topics for this course. In 211 (and maybe 324 for some of you), you learned about things like interrupts, traps, exceptions, caches, virtual memory. These will all be important here, and we’ll revisit those as we go along. So what do you need to do to go from the basic hardware you studied in those courses to the multi-user systems we are used to on modern computers? A computer system is made up of a collection of resources, such as a processor, memory, disks, a keyboard, printers, network interfaces. The operating system attempts to regulate the use of these resources for efficiency, fairness when multiple users or processes want to use them, and safety to make sure multiple users don’t interfere with each other. We will consider the operating system from the point of view of users and systems. To a user, the OS provides a more convenient interface. This allows the user to log in, manipulate files and run programs in a reasonably intuitive and convenient manner. Meanwhile, it provides protection of the user’s data from unauthorized access, and ensures that the user is allocated a fair share of the computer’s resources.
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
CS 322 Operating Systems Spring 2008 The user would like to do things like running programs and reading and writing files and commu- nicating over the network without worrying about the details of what goes on at the lower levels. Abstraction! To a system, the OS provides safe and efficient access to the actual hardware. The OS tries to share resources when safe to do so and restrict access when necessary. We can think of the OS as a big resource manager. Examples of Problems Many important ideas in Computer Science arise in the study of Operating Systems: There are 3 users, each wishing to use the computer at the same time. Each has a program that needs to run for 5 minutes. Is it better for the system to run the first to completion, then the second to completion, then the third? Should it switch among them once a minute? Once
Background image of page 2
Image of page 3
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}

Page1 / 11

intro - Computer Science 322 Operating Systems Mount...

This preview shows document pages 1 - 3. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online