Published on

Chapter 1-System Software

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide


  1. 1. Introduction Chapter – 1
  2. 2. • • • • • Introduction What is system software? Goals of system software System programs and System programming The wonderland of System Software Views of System Software
  3. 3. What is system software? • To know system software the first task is known what is system for example • To a school or college student,the computer system is equipment that runs a browser for the internet • To a user of an application package such as accounting package the computer system is simply facilate use of packages • To a programmer the system is tool for developing programams.
  4. 4. What is system software? • In short every one has their own opinion about system • Basically computerized system can be divided into 2 parts • The electronic circuit that constitute computer hardware • The system software that enables a user to satisfy their computer needs by provide them effective functionality which is helpful to use computerized system
  5. 5. What is system software? • As we discuss earlier for computer system everyone has their own view so we generate abstract views as under given User interface User interface Application programs Language processors Operating system Operating systems Computer hardware Computer hardware
  6. 6. Abstract views of a computer system, • User interface: the user interface accepts user’s command for using services provided by os and initiates execution of one or more programs to fulfill the command. the user interface is either command line interface, as in dos it accepts the command on prompt and on windows it works as a graphical user interface.
  7. 7. Abstract views of a computer system, • Application programs or language processors: This programs either implement the user’s application or assist in development of a program • Operating system: it controls the operation of the computer and provide a set of services for executing programs and using resources of the computer.
  8. 8. Features of System software • Basically system software has two features • One is it facilate execution of programs and use of resources in a computer system. • Other is it is layer based approach where each layer is communicate with other according to abstract view of system.
  9. 9. Goals of System software • The fundamental goals of system software are as given beloved. - User convenience: provide convenient methods of using computer system - Efficient use: ensure efficient use of computer resources - Non-interference: prevent interference in the activities of its users
  10. 10. User convenience • It provide convenient methods of using computer systems for examples Facet Examples Fulfillment of necessity Ability to execute programs, use the file system Good service Speedily response to computer system User friendly interface Easy to use command like GUI New programming model Concurrent programming Web oriented features Meant to set up web oriented servers Evolution Add new features, use new computer technology
  11. 11. Efficient Use • Ensure efficient use of computer resources • Concentrates on cpu,memory,disks and other io devices • Each programs has allotted some resources without it can not execute • To achieve good efficiency the system software must minimize the waste of resources by programs and own overhead
  12. 12. Non-interference • System must prevent illegality use of programs it mean without permission no one cab able to access the program • System must focus on isolation • The authentication and authorization concepts is must for computerize systems • This activity is possible by using sophisticated authentication technique
  13. 13. System programming • System software is collection of programs • Each program is called system program which plays a role in the effective servicing of users • Servicing includes the all activities in the creation of programs • System programming is the set of techniques used to realizes these design goals
  14. 14. System programming • The program should function correctly under all conditions • The program should be effective in computer environment • It also have 2 goals - First is it is portable - Second is it should be able to envolve to provide new functionalities and adopt new technologies
  15. 15. The wonderland of System Software • Programs are executed on based of resources like cpu,memory,io devices but in some case program A be preferred over program B • The purpose of studying system software is which of two should be preferred in a specific situation • The following aspects effect on system software which provide solution about referencing which program from 2 at same time.
  16. 16. The program development and production environments • In program development first user run program on trial base to rectify the bugs • In production environments the user executes on one or more sets of data each to produce useful results. • A Compiler and interpreter are 2 system programs that can use to execute program in these environments.
  17. 17. Making Software Portable • Portable mean program must be able to run on any environment • The notion of a virtual machine provides a convenient method of implementing portability • For example Software S Software S Virtual machine layer for c S run on computer c S is ported to c
  18. 18. Realizing Benefit of internet • A program should be able to invoke program located in remote computers and integrate their result in its own computation • A user should be able to download an unknown program to her/his computer and execute it without danger • A web server should be able to provide time varying data also called dynamic content to a large number of client
  19. 19. The Quick and Dirty programming • When users wishes to perform computational task it becomes time consuming for system • So in that case a user may desire a quick and dirty solution is needed for system which provide flexibility to solve errors • The solution should fulfill users computational need.
  20. 20. The Embedded system environment • Embedded system applications deviated from trend towards more intelligence in computer hardware and software. • In this system a computer system controls the operation of an equipment such as audio,cell phone etc • But embedded system has limitations their size is fixed so they have lack of resources so it is difficult to compile • To solve this problem special compiler are needed.
  21. 21. Dynamic specification, flexibility and adaptive software • The term dynamic mean there are special features are implemented during execution time of program • It creates program execution time overhead for example define runtime array with size of 100 • Flexibility is the capability to broaden the choice in specification or decision according to need of user. for example user define data types
  22. 22. Adaptive Software • Adaptive software is one that adjusts its own features and behavior according to environments • It is combination of dynamic and flexibility of system. • For example language processors which generally convert user language into system language • Other is dynamic compiler which invoke the size of variable at run time with some user define data types.
  23. 23. Views Of System Software • User centric view: this view includes system programs that provide user continence by permitting a user to specify her computational need in a manner of his own choice • System centric View: it includes system programs that provide effectiveness in the simultaneous servicing among many users and also provide facilities for interleaving of users request in a multi user software.
  24. 24. Views Of System Software User interface User interface Language processors Multi user software Operating System • Computer hardware User interface
  25. 25. User Centric View • It assists one user in fulfilling his computational needs • System program perform the role of mediator between system and user • Language processors translate the user need into system oriented need • Assembler which work as a compiler which is translate the system assembly language into machine oriented program • Linker and loader helps the execution of machine program
  26. 26. User Centric View • Debugger helps checking bugs in the programs • If there are small number of tasks are there then language processor work as a interpreter • Application program is developed using language processors where translation is necessary • Generally user centric view contain the scripts that control the application program
  27. 27. System Centric View • It is system programs has system software that achieves effective utilizations • Operating system has allotted resources for all programs at a time of execution and this process take place with sharing resources by applications • Sharing resources may needed non-interference between programs • Resource sharing is focused on 2 techniques - Resource partitioning: in which resource is divided into programs
  28. 28. System Centric View - Resource scheduling: in which resource selected from list of programs and allotted resource for a particular time period - Scheduling of CPU results in interleaved execution of programs - For example os provide multithreading purpose for schedulling.