Академический Документы
Профессиональный Документы
Культура Документы
controls the execution of application and acts as an interface between the user of a computer and the computer hardware.
What is software?
What is System Software? What is Application Software?
computer hardware and to provide and maintain a platform for running application software. Application software, also known as software application, application or app, is computer software designed to help the user to perform a singular or multiple related specific tasks. Typical examples are word processors, spreadsheets, media players and database applications. Memory is the electronic holding place for instructions and data that your computer's microprocessors can reach quickly. A processor is the logic circuitry that responds to and processes the basic instruction that drive a computer. The term processor has generally replaced the term central processing unit (CPU). The processor in a personal computer or embedded in small devices is often called a microprocessor.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 4
MHz is a calculation of 1 million cycles per second (or computer instructions), so if you have a processor running at 2000 MHz, then your computer is running at 2000,000,000 cycles per second, which in more basic terms is the amount of instructions your computer can carry out. Another important abbreviation is Gigahertz or GHz. A single GHz or 1 GHz is the same as 1000 MHz . Sounds a bit confusing, so here is a simple conversion : 1000 MHz (Megahertz) = 1GHz (Gigahertz) = 1000,000,000 Cycles per second (or computer instructions).
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 5
Introduction
A modern computer consists one or more processor, main memory, disks, printers, a
keyboard, a display, network interface and various other input/output(I/O) devices. Typically complex system. Managing all these components and using them optimally is a very challenging job. For this reason, computers are equipped with a layer of software called the operating system. Job of OS is to provide user programs with a better, simpler, cleaner, model of the computer and to handle managing all the resources .
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 6
Most users will have had some experience with different OS. Such as Windows, Linux( we will learn in current semester), Mac.
Appearance will be different of each OS but functionality will remain almost same. Like accessing email, web browser, read/ write docs. The program that users interact with, usually called Shell when it is text based and the GUI(Graphical User Interface) Actually icon on desktop, it is not part of
Operating system but with help of icons to get its work done.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 7
Web Browser
E-Mail Reader
Music Player
Software
Kernel Mode
Operating System
Hardware
In fig. we can see hardware at bottom, it consists of chips, boards, disks, a keyboard, a monitor, and many more.
On the top of hardware is software. Computers have two modes of operations: Kernel mode and user mode. The OS is most fundamental piece of software and runs in Kernel mode(Supervisor mode). In this mode, it has complete access to all the hardware and can execute any instruction the machine is capable of executing. Rest of software will run in User node.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 9
The user interface program, shell or GUI, is the lowest level of user node software, and allows the user to start other program, such as web browser, e-mail reader, or music player.
An important difference between the OS and normal software(user node) is that if a user does not like a particular e-mail reader, he or she is free
to get a different one or write his own. If he choose to write, he is not free to write his own clock interrupt handler, which is part of OS and is protected by hardware against attempts by users to modify. That means user can not modify any code.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 10
mode but after all it is helping to OS or perform privileged functions. For example, you want to change your password of any application. This application is not part of OS and also not run in Kernel mode. But it carries out a sensitive function and has to be protected in a special way. In some system, it is considered to be the OS(file system) and run in user space. Some times it is very hard to draw a boundary because some program run in Kernel mode and some in User mode.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 11
other than where they reside. They are very large, huge, complex, and long- lived. The source code of OS like Linux or Windows is about more than five million lines of Code. They are very hard to write and having written on, the owner is not happy to throw and start to again because it takes long time.
12
13
Users
Editor
Loader
Compiler
Operating System
Computer Hardware
14
Every computer must have an OS to run other programs. The Operating system control and coordinates the use of the hardware among the various system programs and application program for a various users. It simply provides an environment which other program can do useful work. The Operating system is a set of special program that run on a computer system that allows it to work properly. It perform basic task such as recognizing input from the keyboard, keeping track of files and directories on the disk, sending output to the display screen and controlling devices. SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 15
Purpose of OS
OS is designed to serve two basic purposes: (1). It control the allocation and use of the computing systems resources among the various users and disks.
(2). It provides an interface between the computer hardware and the programmer that simplifies and makes feasible for coding, creation, debugging of application programs.
16
OS support tasks
1. Provides the facilities to create, modification of
program and data files using an editor. 2. Access to the compiler for translating the user program from high level language to machine language. 3. Provide a loader program to move the compiled program code to computers memory for execution. 4. Provide routings that handle the details of I/O programming.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY
17
storage and processing of data and for the control of these function. The OS is responsible for managing these resource. Main resources that are managed by the operating system. A portion of the operating system is in main memory. This includes the Kernel, which contains the most frequently used functions in operating system and at a given time, other portions of OS currently in use.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 18
I/O Controller
I/O Controller
Processor
O/S
19
system. A portion of the operating system is in main memory. This includes the Kernel, which contains the most frequently used function in the operating system and at a given time, other portion of the OS currently in use. The remainder of main memory contains other user program and data. The allocation of main memory is controlled by the OS and memory management hardware in the processor. The operating system decides when I/O device can be used by a program in execution and controls the access to and use of files.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 20
or concurrently. That is resource of the computer system may be dedicated to a single program until its completion or they may be dynamically reassigned among a collection of active program in different stages of execution.
21
and development of various generation of computer system. (1) Zeroth Generation-Mechanical Parts (2) First Generation(1945-1955)- Vacuum Tubes (3) Second Generation(1955-1965)- Transistor (4) Third Generation(1965-1980)-Integrated Circuits (5) Fifth Generation(1980-Present)- Large Scale Integration
22
Zeroth Generation
The first digital computer was designed by
Charles Babbage. It had a mechanical design where wheels, gears, cogs etc. This computer was slow and unreliable, this design could not really become very popular. There was no question of any OS of any kind of this machine.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 23
First Generation
After few years, a solution evolved which was
electronic rather than mechanical. These machines were huge and their continued use generated a great deal of heat. The vacuum tubes also used to get burnt very fast. For one computer to run, at least 10,000 to 20,000 tubes could be wasted. The programming was done only in machine language so that is not easy for normal people at this time. And also, this was neither an assembly language nor any higher level language. So it was not friendly to both the users and programmers.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 24
Vacuum Tubes
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 25
will write a program first( on paper or FORTAN[Formula Translating System] or assembler), then punch it on cards. He/she would then bring the card deck down to input room and hand it to one of the operators and wait until the output was ready. When the computer finished whatever job it was currently running, an operator will go to the printer and tear off the o/p and carry to the output room, so that programmer can collect output later. Programmer take one of the card decks that had been bought from the input room and read it in. If the FORTRAN compiler was needed, the operator have to get it from a file cabinet and read it in. Much computer time was wasted while operators were walking around the machine room.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 28
Spooling
Acronym for simultaneous peripheral operation on
line. Spooling refers to putting jobs in a buffer, a special area in memory or on a disk where device can access them when it is ready. Spooling is useful because device access data at different rates. The buffer provides a waiting station where data can rest while the slower device catches up. Computer can perform I/O in parallel with computation, it becomes possible to have the computer read a deck of cards to a tape, drum or disk and to write out to a tape printer while it was computing, this process is called spooling.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 29
spooling. In print spooling, documents are loaded into a buffer and then printer pulls them off the buffer at its own rate. Spooling is also used for processing data at remote sites. The CPU sends the data via communication path to a remote printer. Spooling overlaps the I/O of one job with the computation of other jobs. one difficulty with simple batch system is that the computer still needs to read the deck of cards before it can begin to execute job. This means that the CPU is idle during these relatively slow operations.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY
30
Advantages of Spooling
The spooling operation uses a disk as a very large
buffer. Spooling is however capable of overlapping I/O operation of one job with processor operations for another job
31
OS Services
An operating system provides services to
programs and to the users of those programs. It provide an environment for the execution of programs. The services provided by one operating system is different than other operating system. Operating system makes the programming tasks easier. The common services provided by the operating system is listed.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 32
OS Services
Types of services that an operating system provides for
reading and writing records. These services fall in the category. Information Management(IM). From systems programmers point of view, the operating system can be considered to be a collection of many such callable programs or services categorized under three major heads
Information Management(IM).
Process Management(PM).
Memory Management(MM).
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY
33
Information Management
Information management(IM) refers to a set of
services used for storing, retrieving, modifying and removing the information on various devices. The organization of the information in terms of directories and files, allocating and deallocating the sector to various files, maintain and enforcing the access controls to ensure that only the right people have access to the information and driving various devices are done by these system services. These are normally provided by a single user operating system ( such as Windows 95) as well as multiuser operating system (such as Windows 2000, UNIX).
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 34
Services of IM
Create a file Create a directory Open a file ( for read, write, or both) Close a file Read data from file to buffer Write data from buffer to file Move the file pointer(cursor) Read and return a files status Change working directory
35
Process Management(PM)
The
services provided through Process Management(PM) are very important, if the operating system supports multiple users. In a modern multiuser operating system, a number of users located at different terminals run the same or different program, and this scheme requires an authority. The function of Operating system is to keep track of all the competing process( running program, a process), schedule them(i.e. sequence them), dispatch(i.e. run or execute) them one after the other but doing these, each user has the full control of CPU.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 36
Block a process
Ready a process Dispatch a process
Suspend a process
Resume a process
37
Memory Management(MM)
The
services provided under Memory Management(MM) are directed to keeping track of memory and allocating/deallocating it to various processes. The operating system keeps a list of free memory locations. Before a program is loaded in the memory from the disk, this module(MM) consults this free list, allocates the memory to the process, depending upon the program size, and updates the list of free memory.
38
Some service of MM
Allocate a chunk of memory to process
Free(release) a chunk of memory from a process
39
Types of OS
(1) Mainframe Operating System
computers in terms of their I/O capacity. A mainframe with 1000 disks and millions of gigabytes of data. Mainframe are also making something of a comeback as high-end web servers, servers for large-scale electronic commerce sites and servers for business to business transaction.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 40
The operating system for mainframes are heavily oriented toward processing many jobs at once, most of which need huge amount of I/O. They typically offer three kind of service
Batch processing Transaction processing Timesharing processing
41
without any interactive user present. Claim processing in an insurance company or sales reporting for chain of store is typically done in batch mode. Transaction processing system handle large numbers of small requests, for example, check processing at a bank or airline reservation. Each unit of work is small, but the system must handle hundred or thousands per second. Timesharing systems allow multiple remote users to run jobs on computer at once, such as querying a big database.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY
42
very large personal computers, workstation or mainframes. They serve multiple users at once over a network and allow the user to share hardware and software resources. Servers can provide print service, file service or web service. Internet providers run many server machines to support their customers and websites use servers to store the WebPages and handle the incoming requests. Example of server OS are Solaris, Linux, Windows server 200x.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY
43
To connect
multiple CPU into a single system depending on how they are connected and what is shared, these systems are called parallel computers, multicomputer, or multiprocessors. They need special operating system with special features for communication, connectivity and consistency. In recent time, multicore chips for personal computers, even conventional desktop and notebook operating system are starting to deal with at least small scale multiprocessors and the number cores is likely to day by day.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY
44
Multiprocessor OS
Personal computer OS
Personal computer OS job is to provide a good
interface to single user. Modern operating system support multiprogramming support dozens of programs started up at boot time. They are widely used for word processing, spreadsheet and internet access. Examples of Personal computer OS are Window 98, Window 2000, Linux etc. Little bit training or introduction require for using personal computer operating system.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY
45
Real time OS
Real time OS characterized by having time as a key
parameter. For example, in industrial process control system, real time computer have to collect data about the production process and use it to control machine in factory.
46
Embedded OS
Continuing on down to smaller and smaller systems, we
come to palmtop computers and embedded systems. A palmtop or PDA(personal Digital Assistant) is a small computer that fits in pocket and perform little function such as accessing electronic access site and memo pad Embedded systems run on the computers that control devices that are not generally thought of as computers, such as TV sets, microwave ovens, and mobile telephones. These often have some characteristics of real-time systems but also have size, memory, and power restrictions that make them special. Examples of such operating systems are PalmOS and Windows CE (Consumer Electronics).
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 47
Smart Card OS
The smallest operating systems run on smart
cards, which are credit card-sized devices containing a CPU chip. They have very severe processing power and memory constraints. Some of them can handle only a single function, such as electronic payments, but others can handle multiple functions on the same smart card. Often these are proprietary systems.
48
System Components
Modern Operating system share the goal of supporting
the system components. The system components are: 1. Process Management 2. Main Memory Management 3. File Management 4. Secondary storage Management 5. I/O System Management 6. Networking 7. Protection System 8. Command Interpreter System
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 49
Process Management
Process refers to a program in execution. The process
abstraction is a fundamental operating system mechanism for management for management of concurrent program execution. The operating system responds by creating a process. A process needs certain resources, such as CPU time, memory files and I/O devices. These resource are either given to the process when it is created or allocated to it while it is running. When the process terminates, the operating system will reclaim any reusable resources. The term process refers to an executing set of machine instruction .m program by itself is not a process. A process is a passive entity.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY
50
activities of the process management 1. Creating and destroying the user and system processes. 2. Allocating hardware resources among the processes. 3. Controlling the progress of processes. 4. Providing mechanisms for process communications. 5. Also provides mechanisms for deadlock handling.
51
systems are concerned with the management of the primary memory. Memory management is concerned with following functions. 1. Keeping track of the status of each location of main memory. i.e. each memory location is either free or allocated. 2. Determining allocation policy for memory. 3. Allocation technique i.e. the specific location must be selected and allocation information updated. 4. After deallocation, status information must be updated.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 52
File Management
Logically related data items on the secondary storage
are usually organized into named collection called files. In short, file is a logical collection of information. Computer uses physical media for strong the different information. A file may contain a report, an executable program or a set of commands to the operating system. A file consists of a sequence of bits, bytes, lines or records whose meanings are defined by their creators. For storing the files, physical media(secondary storage device) is used. Physical media re of different types. These are magnetic disk, magnetic tape and optical disk. Each medium is controlled by a device.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY 53
in connection with file management. 1. Creating and deleting of files. 2. Mapping files onto secondary storage. 3. Creating and deleting directories. 4. Backing up files on stable storage media. 5. Supporting primitives for manipulating files and directories. 6. Transmission of file elements between main and secondary storage.
54
computer may store information in such a way that information may be retrieved at a later time. Secondary storage device is used for storing al the data and programs. Those programs and data access by computer system must be kept in main memory. Size of main memory is small and accommodate all data and programs . It also lost when the power is lost. For this reason secondary storage device is used.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY
55
activities in connection with the disk management. (1) Free space management (2) Storage allocation (3) Disk scheduling. The entire speed and performance of a computer may hinge on the speed of the disk subsystem.
56
called the I/O traffic controller. Each I/O device has a device handler that resides in a separate associated with that device. The I/O system consists of 1. A memory management components that includes buffering, caching and spooling. 2. A general device driver interface. 3. Drivers for specific hardware services.
57
Networking
Networking enables computer users to share resources
and speed up computation. Following parameters are considered while designing the networks. 1. Topology of network 2. Types of network 3. Physical media 4. Communication protocols 5. Routing algorithm
58
Protection System
Modern computer system support many users and
allow the concurrent execution of multiple processes. It is necessary that the information and device must be protected from unauthorized user or processors. The protection is any mechanism for controlling the access of programs, processes or users to the resources defined by a computer system. Protection mechanisms are implemented in operating system to support various security policies. The goal of the security system is to authenticate subjects and to authorize their access to any object.
SHANKERSINH VAGHELA BAPU INSTITUTE OF TECHNOLGY
59
60