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
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"
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
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"