Done by,
Dr. D. Veera Vanitha, AP/ECE,
School of Engineering,
Avinashilingam Institute for Home Science and
Higher Education for Women, Coimbatore.
 Convenience - An OS makes a computer
more convenient to use
 Efficiency - An OS allows the computer
system resources to be used in an efficient
manner
 Ability to evolve - An OS should be
constructed in such a way as to permit the
effective development, testing, and
introduction of new system functions without
interfering with service.
 Program development
 Program execution
 Access I/O devices
 Controlled access to files
 System access
 Error detection and response
 Accounting
A computer is a set of resources for moving, storing, &
processing data
 The OS is responsible for managing these resources
- A major OS will evolve over time for a number
of reasons. They are:
 Hardware upgrades plus new types of hardware
 New services
 Fixes
Key requirement for an OS includes:
 Serial processing
- No operating system
- Machines run from a console with display lights,
toggle switches, input device, and printer
Problems are:
- Scheduling
- Setup Time
 Simple Batch Systems
- Early computers were extremely expensive.
It is Important to maximize processor
utilization
- Monitor Point of View – Monitor controls the
sequence of events
- Processor Point of View – Processor executes
instruction from the memory containing the
monitor
- Job Control Language (JCL) – Special type of
programming language used to provide
instructions to the monitor
- Desirable Hardware Features
Memory protection for monitor
Timer
Privileged instructions
Interrupts
- Modes of Operation
- User Mode - user program executes in user
mode
- Kernel Mode - monitor executes in kernel
mode
Multiprogrammed Batch Systems
- Even with the automatic job sequencing provided
by a simple batch operating system, the processor
is often idle
- The problem is that I/O devices are slow
compared to the processor.
 Uniprogramming
- Processor must wait for I/O instruction to
complete before preceding
 Multiprogramming
- When one job needs to wait for I/O, the processor
can switch to the other job
 Time Sharing Systems
- Using multiprogramming to handle multiple
interactive jobs
- Processor’s time is shared among multiple users
- Multiple users simultaneously access the system
through terminals
Problems and Issues:
- Multiple jobs in memory must be protected from
each other’s data
- File system must be protected so that only
authorised users can access
- Contention for resources must be handled
 Major Theoretical advances in the development of
OS are:
- Processes
- Memory management
- Information protection and security
- Scheduling and resource management
- System structure
 Process is fundamental to the structure of
Operating Systems
 A definition of process in different terms is:
 A program in execution
 An instance of a running program
 The entity that can be assigned to and executed
on a processor
 A single sequential thread of execution, a current
state and an associated set of system resources
 Causes of Errors in the Design of the System
Software are:
 Improper synchronization
 Failed mutual exclusion
 Non-determinate program operation
 Deadlocks
 A process consists of three components
 An executable program
 Associated data needed by the program like
variables, buffer etc.,
 Execution context or process state of the
program
 The 5 principal storage management
responsibilities of OS are:
 Process isolation
 Automatic allocation and management
 Support of modular programming
 Protection and access control
 Long-term storage
- Virtual memory allows programs to address
memory from a logical point of view
 The growth in the use of time-sharing systems and
computer networks has brought with it a growth in
concern for the protection of information
 Four categories related with security and
protection in OS are:
 Availability
 Confidentiality
 Data integrity
 Authenticity
 Key responsibility of an OS is managing resources
like memory space, I/O devices and processors
 Resource allocation and scheduling policies must
consider the following parameters:
 Fairness
 Differential responsiveness
 Efficiency
 System structure consists of different levels
Level 1: Electronic circuits
Level 2: Instruction set
Level 3: Procedures
Level 4: Interrupts
Level 5: Primitive Processes
Level 6: Local secondary store
Level 7: Virtual memory
Level 8: Communications
Level 9: File system
Level 10: Devices
Level 11: Directories
Level 12: User processes
Level 13: Shell
 Wide range of different approaches and design
elements has been tried are fits into the following
categories
 Microkernel architecture
 Multithreading
 Symmetric multiprocessing
 Distributed operating systems
 Object-oriented design

Operating systems introduction

  • 1.
    Done by, Dr. D.Veera Vanitha, AP/ECE, School of Engineering, Avinashilingam Institute for Home Science and Higher Education for Women, Coimbatore.
  • 2.
     Convenience -An OS makes a computer more convenient to use  Efficiency - An OS allows the computer system resources to be used in an efficient manner  Ability to evolve - An OS should be constructed in such a way as to permit the effective development, testing, and introduction of new system functions without interfering with service.
  • 3.
     Program development Program execution  Access I/O devices  Controlled access to files  System access  Error detection and response  Accounting
  • 4.
    A computer isa set of resources for moving, storing, & processing data  The OS is responsible for managing these resources
  • 5.
    - A majorOS will evolve over time for a number of reasons. They are:  Hardware upgrades plus new types of hardware  New services  Fixes
  • 6.
    Key requirement foran OS includes:  Serial processing - No operating system - Machines run from a console with display lights, toggle switches, input device, and printer Problems are: - Scheduling - Setup Time
  • 7.
     Simple BatchSystems - Early computers were extremely expensive. It is Important to maximize processor utilization - Monitor Point of View – Monitor controls the sequence of events - Processor Point of View – Processor executes instruction from the memory containing the monitor
  • 8.
    - Job ControlLanguage (JCL) – Special type of programming language used to provide instructions to the monitor - Desirable Hardware Features Memory protection for monitor Timer Privileged instructions Interrupts - Modes of Operation - User Mode - user program executes in user mode - Kernel Mode - monitor executes in kernel mode
  • 9.
    Multiprogrammed Batch Systems -Even with the automatic job sequencing provided by a simple batch operating system, the processor is often idle - The problem is that I/O devices are slow compared to the processor.  Uniprogramming - Processor must wait for I/O instruction to complete before preceding
  • 10.
     Multiprogramming - Whenone job needs to wait for I/O, the processor can switch to the other job
  • 11.
     Time SharingSystems - Using multiprogramming to handle multiple interactive jobs - Processor’s time is shared among multiple users - Multiple users simultaneously access the system through terminals Problems and Issues: - Multiple jobs in memory must be protected from each other’s data - File system must be protected so that only authorised users can access - Contention for resources must be handled
  • 12.
     Major Theoreticaladvances in the development of OS are: - Processes - Memory management - Information protection and security - Scheduling and resource management - System structure
  • 13.
     Process isfundamental to the structure of Operating Systems  A definition of process in different terms is:  A program in execution  An instance of a running program  The entity that can be assigned to and executed on a processor  A single sequential thread of execution, a current state and an associated set of system resources
  • 14.
     Causes ofErrors in the Design of the System Software are:  Improper synchronization  Failed mutual exclusion  Non-determinate program operation  Deadlocks  A process consists of three components  An executable program  Associated data needed by the program like variables, buffer etc.,  Execution context or process state of the program
  • 15.
     The 5principal storage management responsibilities of OS are:  Process isolation  Automatic allocation and management  Support of modular programming  Protection and access control  Long-term storage - Virtual memory allows programs to address memory from a logical point of view
  • 16.
     The growthin the use of time-sharing systems and computer networks has brought with it a growth in concern for the protection of information  Four categories related with security and protection in OS are:  Availability  Confidentiality  Data integrity  Authenticity
  • 17.
     Key responsibilityof an OS is managing resources like memory space, I/O devices and processors  Resource allocation and scheduling policies must consider the following parameters:  Fairness  Differential responsiveness  Efficiency
  • 18.
     System structureconsists of different levels Level 1: Electronic circuits Level 2: Instruction set Level 3: Procedures Level 4: Interrupts Level 5: Primitive Processes Level 6: Local secondary store Level 7: Virtual memory Level 8: Communications Level 9: File system Level 10: Devices Level 11: Directories Level 12: User processes Level 13: Shell
  • 19.
     Wide rangeof different approaches and design elements has been tried are fits into the following categories  Microkernel architecture  Multithreading  Symmetric multiprocessing  Distributed operating systems  Object-oriented design