Unformatted text preview:

Slide 1Slide 2Slide 3Slide 4Slide 5Slide 6Slide 7Slide 8Slide 9Slide 10Slide 11Slide 12Slide 13Slide 14Slide 15Slide 16Slide 17Slide 18Slide 19Slide 20Slide 21Slide 22Slide 23Slide 24Slide 25Slide 26Slide 27Slide 28Slide 29Slide 30Slide 31Slide 32Slide 33Slide 34Slide 35Slide 36Slide 37Slide 38Slide 39Slide 40Slide 41Slide 42Slide 43Slide 44Slide 45Slide 46Slide 47Slide 48Slide 49Slide 50Slide 51Slide 52Slide 53Slide 54Slide 55Slide 56Slide 57Slide 58Slide 59Slide 60Slide 61Slide 62Slide 63Slide 64Slide 65Slide 66Slide 67Slide 68Chapter 6: An Introduction to System Software and Virtual MachinesInvitation to Computer Science,Java Version, Third EditionInvitation to Computer Science, Java Version, Third Edition2ObjectivesIn this chapter, you will learn aboutSystem softwareAssemblers and assembly languageOperating systemsInvitation to Computer Science, Java Version, Third Edition3IntroductionVon Neumann computer“Naked machine”Hardware without any helpful user-oriented featuresExtremely difficult for a human to work with An interface between the user and the hardware is needed to make a Von Neumann computer usableInvitation to Computer Science, Java Version, Third Edition4Introduction (continued)Tasks of the interfaceHide details of the underlying hardware from the userPresent information in a way that does not require in-depth knowledge of the internal structure of the systemInvitation to Computer Science, Java Version, Third Edition5Introduction (continued)Tasks of the interface (continued)Allow easy user access to the available resourcesPrevent accidental or intentional damage to hardware, programs, and dataInvitation to Computer Science, Java Version, Third Edition6System Software: The Virtual MachineSystem softwareDef: a collection of compute programs that manage the resources of a computer and facilitate access to those resourcesActs as an intermediary between users and hardwareCreates a virtual environment for the user that hides the actual computer architectureVirtual machine (or virtual environment)Set of services and resources created by the system software and seen by the userInvitation to Computer Science, Java Version, Third Edition7Figure 6.1The Role of System SoftwareInvitation to Computer Science, Java Version, Third Edition8Types of System SoftwareSystem software is a collection of many different programsOperating systemControls the overall operation of the computerCommunicates with the userDetermines what the user wantsActivates system programs, applications packages, or user programs to carry out user requestsInvitation to Computer Science, Java Version, Third Edition9Figure 6.2Types of System SoftwareInvitation to Computer Science, Java Version, Third Edition10Types of System Software (continued)User interfaceGraphical user interface (GUI) provides graphical control of the capabilities and services of the computerLanguage servicesAssemblers, compilers, and interpretersAllow you to write programs in a high-level, user-oriented language, and then execute themInvitation to Computer Science, Java Version, Third Edition11Types of System Software (continued)Memory managersAllocate and retrieve memory spaceInformation managersHandle the organization, storage, and retrieval of information on mass storage devicesI/O systemsAllow the use of different types of input and output devicesInvitation to Computer Science, Java Version, Third Edition12Types of System Software (continued)SchedulerKeeps a list of programs ready to run and selects the one that will execute nextUtilitiesCollections of library routines that provide services either to user or other system routinesInvitation to Computer Science, Java Version, Third Edition13Assembly LanguageMachine languageUses binaryAllows only numeric memory addressesDifficult to changeDifficult to create dataInvitation to Computer Science, Java Version, Third Edition14Assembly Language (continued)Assembly languagesDesigned to overcome shortcomings of machine languagesCreate a more productive, user-oriented environmentEarlier termed second-generation languagesNow viewed as low-level programming languagesInvitation to Computer Science, Java Version, Third Edition15Figure 6.3The Continuum of Programming LanguagesInvitation to Computer Science, Java Version, Third Edition16Invitation to Computer Science, Java Version, Third Edition17Assembly Language (continued)Source programAn assembly language programObject programA machine language programAssemblerTranslates a source program into a corresponding object programInvitation to Computer Science, Java Version, Third Edition18Figure 6.4The Translation/Loading/Execution ProcessInvitation to Computer Science, Java Version, Third Edition19Assembly Language (continued)Advantages of writing in assembly language rather than machine languageUse of symbolic operation codes rather than numeric (binary) onesUse of symbolic memory addresses rather than numeric (binary) onesPseudo-operations that provide useful user-oriented services such as data generationInvitation to Computer Science, Java Version, Third Edition20Typical Instruction of Assembly Language(Label): (op code mnemonic) (address field) (comments)Label: permanent identification for this instruction of data, like an address of command.op code mnemonic: symbolic command nameAddress field: symbolic address of the dataComments: for readingInvitation to Computer Science, Java Version, Third Edition21Examples:Binary OP code Operation Meaning0000 LOAD X CON(X)->R0001 STORE X R->CON(X)0010 CLEAR X 0->CON(X)0011 ADD X R+CON(X)->R0100 INCREMENT X CON(X)+1->CON(X)0101 SUBSTRACT X R-CON(X)->R0110 DECREMENT X CON(X)-1->CON(X)0111 COMPARE X if CON(X)>R, set GT = 1 if CON(X)=R, set EQ = 1 if CON(X)<R, set LT = 1Invitation to Computer Science, Java Version, Third Edition22Continued1000 JUMP X Get the next instruction from memory location X1001 JUMPGT X Get the next instruction from memory location X if GT = 11010 JUMPEQ X Get the next instruction from memory location X if EQ = 11011 JUMPLT X Get the next instruction from memory location X if LT = 11100 JUMPNEQ X Get the next instruction from memory location X if EQ = 01101 IN X Input value, store in X1110 OUT X Output X1111 HALT StopInvitation to Computer Science, Java Version, Third Edition23How to


View Full Document

GSU CSC 2010 - chapter06

Download chapter06
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view chapter06 and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view chapter06 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?