COMPUTER SOFTWARE Section 2 “System Software: Computer System Management ” Chapter 4. Lecture-6/ T. Nouf Almujally. System Software. System Software. Consists of programs that manage and support a computer system and its information processing activities. System Management Programs.
Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.
COMPUTER SOFTWARE • Section 2 “System Software: Computer System Management ” • Chapter 4 Lecture-6/ T. NoufAlmujally
System Software • Consists of programs that manage and support a computer system and its information processing activities. SystemManagement Programs Manages hardware, software, network, and data resources of computer systems Operating systems, network management programs, database management systems, system utilities Helps users develop IS programs and procedures, and then prepare themfor processing System Development Programs Includes Programming language translators and editors, CASE, and programming tools
Operating Systems Integrated system of programs that… Manages the operations of the CPU Controls the input/out, storage resources, and activities of the computer system Provides support services as the computer executes application programs The operating system must be loaded and activatedbefore other tasks can be accomplished Examples of Popular Operating Systems: Microsoft Windows, Unix, Linux and MAC OS X
Operating System Basic Functions • Command-driven • Menu-driven • Graphical User Interfaces (GUI) Multitasking: is a task management approach
OS User interface • Defined as the part of the information system through which the end user interacts with the system Command-driven interface: • The computer users have to input the command every time • (e.g., MS-DOCS). Menu-driven interface: • The computers users use the menu to • execute the command instead of typing it in. Graphical User Interface (GUI): • Defined as the part of an operating system users interact with that uses • graphic icons and the computer mouse to issue commands and make • selections. The user uses a mouse to control the computer.
Resource Management • An operating system uses a variety of resource management programs to manage the hw and network resources of a computer system. • Including CPU, memory, secondary storage devices, input/output peripherals . • Common functions: • Keeping track of where data and programs are stored • Subdividing memory; providing virtual memory capability • E.g. Memory Management Program
File Management • Control the creation , deletion, and access to files of data and programs. • Keep track of physical location of files on magnetic disks and other secondary storage devices.
Task management • Help accomplish the computing tasks of end users. • The program control: • Which task gets access to CPU • For how much time • Allocate a specific slice of CPU time to a particular task. • Multitasking: is a task management approach, allow for several computing tasks to be performed in a simultaneous fashion .
Other System Management Programs • Database management systems chapter 5 • Network management Programs chapter 6 This figure compares several types of system software offered by IBM and its competitors
Other System Management Programs • Other system management software are marked as separate programs or included as part of an operating system: • Utility programs (or utilities): • Programs like Norton utilities perform various housekeeping functions, includes data backup, virus protection, data compression, etc. • Performance Monitors: • Programs that monitor and adjust computer system to keep them running efficiently. • Security Monitors: • Monitor and control use of computer systems and provide warning messages and record unauthorized use of resources.
Programming Languages • Allows a programmer to develop the sets of instructions that constitute a computer program.
Machine Languages First Generation Languages The most basic of programming languages All program instructions had to be written using binary codes Requires specific knowledge of theinternal operations of the CPU being used Must specify the storage location for everyinstruction and item of data used Difficult to work with, and error prone
Assembler Languages Second Generation Languages Developed to reduce difficultiesin writing machine language programs Uses “assemblers” to convert the programsinto machine instructions Symbols used to represent operation codesand storage locations
High-Level Languages Third Generation Languages Uses brief “statements” or arithmetic expressions Statements translated into machine languageby compilers or interpreters Less efficient than assembler language andrequires greater translation time Machine-independent Examples: BASIC, COBOL, FORTRAN
Fourth-Generation Languages Fourth-Generation Languages Variety of programming languages that arenonprocedural and conversational Programmers specify the result wanted;the computer determines the sequence of instructions that accomplish the result Simplifies the programming process Natural language; very close to English or human languages Sometimes called fifth-generation (5GLs)
Object-Oriented Languages • Combines data elements and the procedures that will be performed upon them into objects. • E.g., data about a bank account and the procedures performed on it, such as interest calculations
Object-Oriented Languages Most widely used software development languages Easier to use and more efficient for graphics-oriented user interfaces Reusable: can use an object from one application in another application Examples: Visual Basic, C++, Java Most object-oriented languages provide a GUI that supports visual programming
Web Languages • HTML, XML and Java are three programming languages that are important tools for building multimedia web pages, web sites and web-based applications. A page description language that creates hypertext documents for the Web HTML Describes Web page content by applying identifying tags or contextual labels to the data XML Object-oriented programming language that is simple, secure, and platform independent Java Java applets can be executedon any computer
Compiler Assembler Interpreter Translates assembler language statement A compiler that translates and executes each statement ina program,one at a time instead of first producing a complete machine language programs, Translates high-level language statements Programming Software Language Translator Program : is a program that translate instructions written in programming languages into machine language that computer can execute.
Programming Tools • Language translators have always provided some editing and diagnostic capabilities to identify programming errors or bugs. • However, most software development programs now include powerful graphics-oriented programming editors and debuggers. • These programming tools help programmers identify and minimize errors while they are programming. • An essential part of widely used programming languages like Visual Basic, C++ and Java.
Resources .. • Read from Chapter 4 (Section 2)