Chapter 6

Intro to System Software

By the end of this chapter, you will be able to explain different system system software and explain Von Neumann's virtual machine. Additionally, you will gain a deeper understanding into how computers use binary code to communicate.

All data is represented in binary, so writtign code would be very difficult

interface between user and Von neuman computer

hides from the user messy details fo the underlying features

presents info about what is ahppening such that in-depth knowledge of the interal structure of the system is not needed

allows easy user access to the resources available on the computer

prevents accidental or interntial damage to hardware, programs, and data


System Software - a collection of computer programs that manage the resources of a computer and the facilitates access to those resources

Application software - software/programs that allow users to address specialized tasks such as writting a document, browing the web, etc

software consists of sequence of instructions (programs) that solve a problem

System software acts as an "intermediary" between users & hardware

virtual machine - set of services and resources created by software and seen by the user

also known as "virtual enviroment"

Types of system software

operating system - program that controls overall operations of the computer

single most important piece of system software

communicated w/ users, determines what they want, and activates other system programs, application packages, or user programs to carry out their requests

software packaves that handle these requests are

user interface, language servies, memory manager, information managers, I/O systems, scheduler, and utilities


User Interface

GUI (graphical user interface) - gives users an intuitive visual overview as well as graphical control of the capabilities and servies of a computer

all modern operating system have this and is controlled through key strokes, mouse clicks, etc

language services (consists of programs called assemblers, compilers, and interpreters)

they allow progras to be written in a high-level, uer-oriented language rather than machine language

helps execute programs easily and efficiently

often included compenents such as text editors and debuggers

memory managers - programs that allocate memory space for programs/data and retrieve this memory space when it is no longer needed

information managers - programs that handle organization, storage, and retrieval of info on storage devices such as hard drives, DVDs, flash drives, etc as well as data stroed remotely in data centers

they allow for organization of ifno in an efficient & hierarchial manner through directories, folders, and files

keeps personal data safe from accidental or intentional misuse

I/O systems - software packages that allow easy and efficient use of the many different types of input/output decvices that exist on modern computers

scheduler - system program that keeps a list of programs ready to run on the processor and selects the one it will execute next

it allows several programs to be active at once

utilities - collection of liberary routines that procvides a wide range of userful services either to the user of other system routines

text editors, online help routines, images and sound applications, and control panels are examples

utilities are sometimes known as "program liberaries"