The document provides an overview of the evolution of operating systems from the 1960s to the 1980s. It discusses how operating systems initially managed batch processing jobs with one program at a time using punched cards. This led to poor CPU utilization. Developments then included multiprogramming with multiple programs in memory, and time-sharing systems which gave each user a small time slice to provide an illusion of dedicated access. Time-sharing required techniques like virtual memory to support more concurrent users by swapping program parts between disk and memory. Overall the evolution improved CPU utilization and brought computing as a utility to more users.
computer notes - Introduction to operating systemecomputernotes
The primary need for the OS arises from the fact that user needs to be provided with
services and OS ought to facilitate the provisioning of these services. The central part of a
computer system is a processing engine called CPU
An operating system acts as an intermediary between the user and computer hardware. It manages computer resources like memory and CPU time. It also provides abstractions for file management, user interfaces, and handles tasks like booting the computer, running programs concurrently, and allocating hardware resources. Key functions include resource allocation, running programs in parallel through concepts like multiprocessing and multitasking, handling input/output through spooling, and providing interfaces for users and applications.
The document is a project report on operating systems and concepts like multiprogramming, multitasking, multiprocessing, and multithreading. It begins by thanking the teacher for providing the opportunity to do the project. It then outlines the various sections of the report, which include introductions to operating systems and these concepts, as well as their advantages. The report discusses the history and functions of operating systems, and describes different approaches to operating system structure like layered and microkernel designs.
Multiprogramming, multithreading, multiprocessing, and multitasking are techniques used in modern operating systems to improve efficiency. Multiprogramming allows multiple processes to reside in memory simultaneously. This improves CPU utilization by enabling context switching between processes during input/output wait times. Multithreading further increases concurrency by allowing multiple threads to be executed within a process. Multiprocessing uses multiple CPUs to concurrently run multiple processes and threads. Multitasking provides an environment where users can run multiple applications simultaneously.
The document discusses operating systems and some of their core concepts. It defines an operating system as a program that manages computer hardware and acts as an intermediary between users and the computer. It then discusses key OS components like process management, memory management, and protection systems. It also covers concepts like multiprocessing, threads, process states, and context switching.
Multitasking allows multiple programs to share common processing resources like a CPU. It works by quickly switching the CPU between tasks. Early systems used multiprogramming which wasn't guaranteed to run programs in a timely way. Later, preemptive multitasking was developed which allows the OS to guarantee each process regular time slices and respond quickly to external events. Preemptive multitasking is now standard in modern operating systems and allows for responsive multitasking experiences for users.
FellowBuddy.com is an innovative platform that brings students together to share notes, exam papers, study guides, project reports and presentation for upcoming exams.
We connect Students who have an understanding of course material with Students who need help.
Benefits:-
# Students can catch up on notes they missed because of an absence.
# Underachievers can find peer developed notes that break down lecture and study material in a way that they can understand
# Students can earn better grades, save time and study effectively
Our Vision & Mission – Simplifying Students Life
Our Belief – “The great breakthrough in your life comes when you realize it, that you can learn anything you need to learn; to accomplish any goal that you have set for yourself. This means there are no limits on what you can be, have or do.”
Like Us - https://www.facebook.com/FellowBuddycom
computer notes - Introduction to operating systemecomputernotes
The primary need for the OS arises from the fact that user needs to be provided with
services and OS ought to facilitate the provisioning of these services. The central part of a
computer system is a processing engine called CPU
An operating system acts as an intermediary between the user and computer hardware. It manages computer resources like memory and CPU time. It also provides abstractions for file management, user interfaces, and handles tasks like booting the computer, running programs concurrently, and allocating hardware resources. Key functions include resource allocation, running programs in parallel through concepts like multiprocessing and multitasking, handling input/output through spooling, and providing interfaces for users and applications.
The document is a project report on operating systems and concepts like multiprogramming, multitasking, multiprocessing, and multithreading. It begins by thanking the teacher for providing the opportunity to do the project. It then outlines the various sections of the report, which include introductions to operating systems and these concepts, as well as their advantages. The report discusses the history and functions of operating systems, and describes different approaches to operating system structure like layered and microkernel designs.
Multiprogramming, multithreading, multiprocessing, and multitasking are techniques used in modern operating systems to improve efficiency. Multiprogramming allows multiple processes to reside in memory simultaneously. This improves CPU utilization by enabling context switching between processes during input/output wait times. Multithreading further increases concurrency by allowing multiple threads to be executed within a process. Multiprocessing uses multiple CPUs to concurrently run multiple processes and threads. Multitasking provides an environment where users can run multiple applications simultaneously.
The document discusses operating systems and some of their core concepts. It defines an operating system as a program that manages computer hardware and acts as an intermediary between users and the computer. It then discusses key OS components like process management, memory management, and protection systems. It also covers concepts like multiprocessing, threads, process states, and context switching.
Multitasking allows multiple programs to share common processing resources like a CPU. It works by quickly switching the CPU between tasks. Early systems used multiprogramming which wasn't guaranteed to run programs in a timely way. Later, preemptive multitasking was developed which allows the OS to guarantee each process regular time slices and respond quickly to external events. Preemptive multitasking is now standard in modern operating systems and allows for responsive multitasking experiences for users.
FellowBuddy.com is an innovative platform that brings students together to share notes, exam papers, study guides, project reports and presentation for upcoming exams.
We connect Students who have an understanding of course material with Students who need help.
Benefits:-
# Students can catch up on notes they missed because of an absence.
# Underachievers can find peer developed notes that break down lecture and study material in a way that they can understand
# Students can earn better grades, save time and study effectively
Our Vision & Mission – Simplifying Students Life
Our Belief – “The great breakthrough in your life comes when you realize it, that you can learn anything you need to learn; to accomplish any goal that you have set for yourself. This means there are no limits on what you can be, have or do.”
Like Us - https://www.facebook.com/FellowBuddycom
This document provides course material for the subject of Operating Systems for 4th semester B.E. Computer Science Engineering students at A.V.C. College of Engineering. It includes information on the name and designation of the faculty teaching the course, the academic year, curriculum regulations, 5 units that make up the course content, textbook and reference details. The course aims to cover key topics in operating systems including processes, process scheduling, storage management, file systems and I/O systems.
This document provides an introduction to operating systems. It discusses how an operating system acts as an interface between the computer hardware and user programs. It then describes different types of operating systems including batch processing systems, online processing systems, time-sharing systems, and real-time systems. Finally, it discusses some popular operating systems like MS-DOS, which became the standard for Intel microprocessors.
This document discusses operating systems, multiprogramming, multitasking, multithreading, and multiprocessing. It defines each concept and compares multiprogramming and multiprocessing. Operating systems manage computer hardware resources and allow multiple programs to run simultaneously. Multiprogramming, multitasking, and multithreading allow a single CPU to switch between multiple processes or threads to optimize resource usage. Multiprocessing uses multiple CPUs to simultaneously execute multiple processes or threads to improve performance. The advantages of multiprocessing include better performance and reliability compared to single processor systems.
1. An operating system acts as an interface between the user and computer hardware, managing resources and allowing users to execute programs.
2. Key components of a computer system include hardware, operating system, application programs, and users.
3. The main functions of an operating system include memory management, process management, device management, information management, protection, and error handling.
This document provides an overview of operating system concepts including system components, operating system services, system programs, system calls, process management, and process states. It describes the four main components of a computer system as hardware, operating system, application programs, and users. It defines key operating system concepts such as multiprogramming, time-sharing, distributed systems, and real-time systems. It also explains process management topics like process states, process control blocks, and context switching.
This document provides an overview of operating systems. It discusses the following key points in 3 sentences:
The document begins with an introduction to operating systems, describing their role in managing computer hardware resources and providing a interface between software and hardware. Various operating system concepts are then covered such as processes, memory management, file systems and I/O subsystem management. Finally, the document discusses different types of operating systems including batch, time-sharing, distributed, network and real-time operating systems.
The document discusses operating systems and their key functions. It defines an operating system as a program that acts as an intermediary between the user and computer hardware. The main goals of an operating system are to execute user programs, make problem solving easier for users, and efficiently use computer hardware. It also controls low-level components like the CPU, memory, and I/O devices, and coordinates their use among application programs and users.
This document provides an introduction to basic operating system concepts. It defines what an operating system is and discusses its main goals of executing user programs, making the computer convenient to use, and efficiently utilizing computer hardware. It then describes different types of systems that operating systems support, including mainframe, desktop, multiprocessor, distributed, clustered, and real-time systems. The key aspects and features required of operating systems to support these different system types are also outlined.
The document provides an overview of operating systems, including their goals, advantages, components, and views from the user and system perspectives. It describes various operating system techniques like spooling, time-sharing, multiprocessor systems, distributed systems, and real-time systems. Multiprocessor systems can be symmetric (SMP) or asymmetric (AMP) depending on how processors are treated. Distributed systems have loosely coupled processors that communicate over a network, providing benefits like improved communication, computation speedup, reliability, and resource sharing. Real-time systems ensure tasks are completed within deadlines and can be soft or hard, with safety-critical systems usually requiring hard real-time guarantees.
An operating system controls application programs and acts as an interface between applications and hardware. It provides services like program development, execution and resource management. An OS allows for convenient, efficient and evolvable use of computer systems. It masks hardware details from users and programs. An OS manages resources like processors, memory, storage and I/O devices.
The document discusses operating systems, their components, functions, and history. It provides an overview of:
1) What an operating system is and its main goals of executing programs, making the computer convenient to use, and efficiently managing hardware resources.
2) The typical components of a computer system including hardware, operating system, application programs, and users.
3) The functions of an operating system which include providing a user environment, resource management, and error detection.
This document provides information about operating systems and their functions. It discusses that an operating system is software that manages computer hardware and software resources and provides common services for computer programs. It describes the main functions of an operating system including processor management, device management, memory management, and file management. It also discusses different types of operating systems such as single-user OS, multi-user OS, real-time OS, and distributed OS. Finally, it lists some commonly used operating systems like Windows, Linux, Android, iOS, and Symbian.
This document provides an overview of an operating systems course, including its aims, outline, recommended reading, and introductory content. The key points are:
1. The course aims to explain operating system structure and functions, illustrate concepts with examples, and prepare students for future courses. Students will learn about CPU scheduling, processes, memory management, I/O, protection, and case studies of Unix and Windows.
2. The course outline covers introductions to operating systems, processes and scheduling, memory management, I/O and device management, protection, filing systems, and case studies of Unix and Windows NT.
3. The recommended reading includes textbooks on concurrent systems, operating system concepts, and case studies
An operating system acts as an interface between software and hardware, managing computer resources and monitoring program execution. It provides a user-friendly interface to utilize hardware in a concealed manner. Common operating systems include Windows, Linux, and UNIX. An operating system performs tasks like memory management, processor allocation, device management, file management, and security. Operating systems can be classified as batch, multiprogramming, time-sharing, real-time, multitasking, and multiprocessing based on their design and capabilities.
This document provides an introduction to operating systems. It discusses what operating systems do, including managing hardware resources and coordinating software programs. It covers computer system organization, including I/O devices, storage structures, and single and multiprocessor architectures. The document also discusses operating system operation through interrupts and dual mode, as well as key operating system functions like process management, memory management, file system management, and mass storage management.
A binary semaphore is a synchronization primitive that can have the values of 0 or 1. They are used to implement mutual exclusion and synchronize concurrent processes. Paging is when pages of memory are written to disk to make space in physical memory for other processes, which can lead to thrashing if too many page faults occur from too much paging. The four conditions that can lead to a deadlock are mutual exclusion, hold and wait, no preemption, and circular wait.
Unit I (8 Hrs)
Introduction to System Software , Overview of all system software’s: Operating system
I/O manager, Assembler, Compiler, Linker ,Loader.
Introductory Concepts: Operating system functions and characteristics, historical evolution
of operating systems, Real time systems, Distributed systems.
Unit II (8 Hrs)
Operating Systems: Methodologies for implementation of O/S service system calls,
system programs, Interrupt mechanisms.
Process - Concept of process and threads, Process states, Process management, Context
switching
Interaction between processes and OS Multithreading Process Control, Job schedulers,
Job Scheduling, scheduling criteria, scheduling algorithms
Unit III (8 Hrs)
Concurrency Control : Concurrency and Race Conditions, Mutual exclusion requirements
Software and hardware solutions, Semaphores, Monitors, Classical IPC problems and
solutions.
Deadlock : Characterization, Detection, Recovery, Avoidance and Prevention.
Unit IV (8 Hrs)
Memory management: Contiguous and non-contiguous, Swapping, Paging, Segmentation
and demand Paging, Virtual Memory, Management of Virtual memory: allocation, fetch and
replacement
Unit V (8 Hrs)
File Management: Concept, Access methods, Directory Structure, Protection, File System
implementation, Directory Implementation, Allocation methods, Free Space management,
efficiency and performance
IO systems: disk structure, disk scheduling, disk management.
Unit VI (8 Hrs)
Case Study of Linux: Structure of LINUX, design principles, kernel, process management and
scheduling, file systems installing requirement, basic architecture of UNIX/Linux system, Kernel,
Shell Commands for files and directories cd, cp, mv, rm, mkdir, more, less, creating and viewing
files, using cat, file comparisons, View files, disk related commands, checking disk free spaces,
Essential linux commands.
Understanding shells, Processes in linux – process fundamentals, connecting processes with pipes,
Redirecting input output, manual help, Background processing, managing multiple processes,
changing process priority, scheduling of processes at command, batch commands, kill, ps, who,
sleep, Printing commands, grep, fgrep, find, sort, cal, banner, touch, file, file related commands – ws,sat, cut, grep, dd, etc. Mathematical commands – bc, expr, factor, units. Vi, joe, vim editor
This is my sort note of operating system.In this note we describe our knowledge for B.Sc level. Student of B.Sc(H) Computer Science this note is good. We describe this note very easy language which the student easily understand.
An operating system acts as an interface between computer hardware and users or programs. It facilitates program execution and access to hardware/software resources. Operating systems provide a user-friendly environment for developing and running programs. When a computer turns on, the BIOS performs a check and loads the bootstrap loader which initializes the operating system. Operating systems allow single-user single-tasking, single-user multi-tasking, and multi-user multi-tasking. They have evolved from batch processing to time-sharing to support for real-time applications. Operating systems manage memory, provide user interfaces, enable multitasking, and use virtual memory to increase available memory.
The document provides an overview of operating system concepts, describing what operating systems do and how they are viewed from both the user and system perspectives. It defines key components of a computer system including hardware, operating systems, application programs, and users. The operating system acts as an intermediary that controls hardware resources and coordinates their use among applications and users. It also describes the basic organization and operation of computer systems, how storage is structured in a storage hierarchy with caching, and how input/output devices are controlled.
An operating system manages computer hardware resources and provides an interface between users and applications. It controls hardware, allocates memory and storage space, manages files, handles input/output between hardware and applications, provides security, and interprets commands. The main goals of an operating system are to make the computer convenient for users and efficiently use hardware resources. Common operating systems include those for mainframes, personal computers, distributed systems, real-time systems, and more specialized operating systems. Operating systems perform essential functions like process management, memory management, file management, input/output management, secondary storage management, and more.
MYSQL DATABASE Operating System Part2 (1).pptxArjayBalberan1
The document provides an overview of different types of operating systems:
- Early computers used batch processing systems where users submitted jobs offline via punch cards and the computer processed them in batches.
- Multiprogramming systems allowed multiple programs to run simultaneously by quickly switching between them, improving resource usage compared to batch systems.
- Time-sharing systems further extended this by allowing many users to access a single computer simultaneously through rapid switching between terminals.
- Distributed systems connect multiple autonomous computers to work together and share workload, with examples including client-server, peer-to-peer, and middleware architectures.
This document provides course material for the subject of Operating Systems for 4th semester B.E. Computer Science Engineering students at A.V.C. College of Engineering. It includes information on the name and designation of the faculty teaching the course, the academic year, curriculum regulations, 5 units that make up the course content, textbook and reference details. The course aims to cover key topics in operating systems including processes, process scheduling, storage management, file systems and I/O systems.
This document provides an introduction to operating systems. It discusses how an operating system acts as an interface between the computer hardware and user programs. It then describes different types of operating systems including batch processing systems, online processing systems, time-sharing systems, and real-time systems. Finally, it discusses some popular operating systems like MS-DOS, which became the standard for Intel microprocessors.
This document discusses operating systems, multiprogramming, multitasking, multithreading, and multiprocessing. It defines each concept and compares multiprogramming and multiprocessing. Operating systems manage computer hardware resources and allow multiple programs to run simultaneously. Multiprogramming, multitasking, and multithreading allow a single CPU to switch between multiple processes or threads to optimize resource usage. Multiprocessing uses multiple CPUs to simultaneously execute multiple processes or threads to improve performance. The advantages of multiprocessing include better performance and reliability compared to single processor systems.
1. An operating system acts as an interface between the user and computer hardware, managing resources and allowing users to execute programs.
2. Key components of a computer system include hardware, operating system, application programs, and users.
3. The main functions of an operating system include memory management, process management, device management, information management, protection, and error handling.
This document provides an overview of operating system concepts including system components, operating system services, system programs, system calls, process management, and process states. It describes the four main components of a computer system as hardware, operating system, application programs, and users. It defines key operating system concepts such as multiprogramming, time-sharing, distributed systems, and real-time systems. It also explains process management topics like process states, process control blocks, and context switching.
This document provides an overview of operating systems. It discusses the following key points in 3 sentences:
The document begins with an introduction to operating systems, describing their role in managing computer hardware resources and providing a interface between software and hardware. Various operating system concepts are then covered such as processes, memory management, file systems and I/O subsystem management. Finally, the document discusses different types of operating systems including batch, time-sharing, distributed, network and real-time operating systems.
The document discusses operating systems and their key functions. It defines an operating system as a program that acts as an intermediary between the user and computer hardware. The main goals of an operating system are to execute user programs, make problem solving easier for users, and efficiently use computer hardware. It also controls low-level components like the CPU, memory, and I/O devices, and coordinates their use among application programs and users.
This document provides an introduction to basic operating system concepts. It defines what an operating system is and discusses its main goals of executing user programs, making the computer convenient to use, and efficiently utilizing computer hardware. It then describes different types of systems that operating systems support, including mainframe, desktop, multiprocessor, distributed, clustered, and real-time systems. The key aspects and features required of operating systems to support these different system types are also outlined.
The document provides an overview of operating systems, including their goals, advantages, components, and views from the user and system perspectives. It describes various operating system techniques like spooling, time-sharing, multiprocessor systems, distributed systems, and real-time systems. Multiprocessor systems can be symmetric (SMP) or asymmetric (AMP) depending on how processors are treated. Distributed systems have loosely coupled processors that communicate over a network, providing benefits like improved communication, computation speedup, reliability, and resource sharing. Real-time systems ensure tasks are completed within deadlines and can be soft or hard, with safety-critical systems usually requiring hard real-time guarantees.
An operating system controls application programs and acts as an interface between applications and hardware. It provides services like program development, execution and resource management. An OS allows for convenient, efficient and evolvable use of computer systems. It masks hardware details from users and programs. An OS manages resources like processors, memory, storage and I/O devices.
The document discusses operating systems, their components, functions, and history. It provides an overview of:
1) What an operating system is and its main goals of executing programs, making the computer convenient to use, and efficiently managing hardware resources.
2) The typical components of a computer system including hardware, operating system, application programs, and users.
3) The functions of an operating system which include providing a user environment, resource management, and error detection.
This document provides information about operating systems and their functions. It discusses that an operating system is software that manages computer hardware and software resources and provides common services for computer programs. It describes the main functions of an operating system including processor management, device management, memory management, and file management. It also discusses different types of operating systems such as single-user OS, multi-user OS, real-time OS, and distributed OS. Finally, it lists some commonly used operating systems like Windows, Linux, Android, iOS, and Symbian.
This document provides an overview of an operating systems course, including its aims, outline, recommended reading, and introductory content. The key points are:
1. The course aims to explain operating system structure and functions, illustrate concepts with examples, and prepare students for future courses. Students will learn about CPU scheduling, processes, memory management, I/O, protection, and case studies of Unix and Windows.
2. The course outline covers introductions to operating systems, processes and scheduling, memory management, I/O and device management, protection, filing systems, and case studies of Unix and Windows NT.
3. The recommended reading includes textbooks on concurrent systems, operating system concepts, and case studies
An operating system acts as an interface between software and hardware, managing computer resources and monitoring program execution. It provides a user-friendly interface to utilize hardware in a concealed manner. Common operating systems include Windows, Linux, and UNIX. An operating system performs tasks like memory management, processor allocation, device management, file management, and security. Operating systems can be classified as batch, multiprogramming, time-sharing, real-time, multitasking, and multiprocessing based on their design and capabilities.
This document provides an introduction to operating systems. It discusses what operating systems do, including managing hardware resources and coordinating software programs. It covers computer system organization, including I/O devices, storage structures, and single and multiprocessor architectures. The document also discusses operating system operation through interrupts and dual mode, as well as key operating system functions like process management, memory management, file system management, and mass storage management.
A binary semaphore is a synchronization primitive that can have the values of 0 or 1. They are used to implement mutual exclusion and synchronize concurrent processes. Paging is when pages of memory are written to disk to make space in physical memory for other processes, which can lead to thrashing if too many page faults occur from too much paging. The four conditions that can lead to a deadlock are mutual exclusion, hold and wait, no preemption, and circular wait.
Unit I (8 Hrs)
Introduction to System Software , Overview of all system software’s: Operating system
I/O manager, Assembler, Compiler, Linker ,Loader.
Introductory Concepts: Operating system functions and characteristics, historical evolution
of operating systems, Real time systems, Distributed systems.
Unit II (8 Hrs)
Operating Systems: Methodologies for implementation of O/S service system calls,
system programs, Interrupt mechanisms.
Process - Concept of process and threads, Process states, Process management, Context
switching
Interaction between processes and OS Multithreading Process Control, Job schedulers,
Job Scheduling, scheduling criteria, scheduling algorithms
Unit III (8 Hrs)
Concurrency Control : Concurrency and Race Conditions, Mutual exclusion requirements
Software and hardware solutions, Semaphores, Monitors, Classical IPC problems and
solutions.
Deadlock : Characterization, Detection, Recovery, Avoidance and Prevention.
Unit IV (8 Hrs)
Memory management: Contiguous and non-contiguous, Swapping, Paging, Segmentation
and demand Paging, Virtual Memory, Management of Virtual memory: allocation, fetch and
replacement
Unit V (8 Hrs)
File Management: Concept, Access methods, Directory Structure, Protection, File System
implementation, Directory Implementation, Allocation methods, Free Space management,
efficiency and performance
IO systems: disk structure, disk scheduling, disk management.
Unit VI (8 Hrs)
Case Study of Linux: Structure of LINUX, design principles, kernel, process management and
scheduling, file systems installing requirement, basic architecture of UNIX/Linux system, Kernel,
Shell Commands for files and directories cd, cp, mv, rm, mkdir, more, less, creating and viewing
files, using cat, file comparisons, View files, disk related commands, checking disk free spaces,
Essential linux commands.
Understanding shells, Processes in linux – process fundamentals, connecting processes with pipes,
Redirecting input output, manual help, Background processing, managing multiple processes,
changing process priority, scheduling of processes at command, batch commands, kill, ps, who,
sleep, Printing commands, grep, fgrep, find, sort, cal, banner, touch, file, file related commands – ws,sat, cut, grep, dd, etc. Mathematical commands – bc, expr, factor, units. Vi, joe, vim editor
This is my sort note of operating system.In this note we describe our knowledge for B.Sc level. Student of B.Sc(H) Computer Science this note is good. We describe this note very easy language which the student easily understand.
An operating system acts as an interface between computer hardware and users or programs. It facilitates program execution and access to hardware/software resources. Operating systems provide a user-friendly environment for developing and running programs. When a computer turns on, the BIOS performs a check and loads the bootstrap loader which initializes the operating system. Operating systems allow single-user single-tasking, single-user multi-tasking, and multi-user multi-tasking. They have evolved from batch processing to time-sharing to support for real-time applications. Operating systems manage memory, provide user interfaces, enable multitasking, and use virtual memory to increase available memory.
The document provides an overview of operating system concepts, describing what operating systems do and how they are viewed from both the user and system perspectives. It defines key components of a computer system including hardware, operating systems, application programs, and users. The operating system acts as an intermediary that controls hardware resources and coordinates their use among applications and users. It also describes the basic organization and operation of computer systems, how storage is structured in a storage hierarchy with caching, and how input/output devices are controlled.
An operating system manages computer hardware resources and provides an interface between users and applications. It controls hardware, allocates memory and storage space, manages files, handles input/output between hardware and applications, provides security, and interprets commands. The main goals of an operating system are to make the computer convenient for users and efficiently use hardware resources. Common operating systems include those for mainframes, personal computers, distributed systems, real-time systems, and more specialized operating systems. Operating systems perform essential functions like process management, memory management, file management, input/output management, secondary storage management, and more.
MYSQL DATABASE Operating System Part2 (1).pptxArjayBalberan1
The document provides an overview of different types of operating systems:
- Early computers used batch processing systems where users submitted jobs offline via punch cards and the computer processed them in batches.
- Multiprogramming systems allowed multiple programs to run simultaneously by quickly switching between them, improving resource usage compared to batch systems.
- Time-sharing systems further extended this by allowing many users to access a single computer simultaneously through rapid switching between terminals.
- Distributed systems connect multiple autonomous computers to work together and share workload, with examples including client-server, peer-to-peer, and middleware architectures.
This document provides an overview of operating systems, including their evolution, types, components, and services. It discusses the need for operating systems to manage hardware resources and provide common services to applications. The major types of operating systems covered are batch, multiprogramming, time-sharing/multitasking, and real-time. It also describes the components of a computer system and how the operating system acts as a manager between hardware, applications, and users. The evolution of operating systems is traced from serial processing to modern personal computer systems.
Operating Systems and Memory Managementguest1415ae65
The document discusses operating systems and how they manage hardware, software, memory and processes. It defines key concepts like physical memory, virtual memory, paging, swapping and buffers. It also categorizes different types of operating systems like real-time OS, single-user OS, multi-user OS and discusses how they schedule processes and allocate system resources.
An operating system is an interface between computer hardware and users that facilitates the execution of programs and access to resources. It provides supports for other programs by loading them into memory and controls hardware access. Major components of an operating system include a user interface, memory manager, process manager, device manager, and file manager. The memory manager allocates and manages memory for programs using techniques like partitioning, paging, and demand paging to allow multiple programs to run simultaneously.
1. The document discusses the basics of operating systems, including definitions, architecture, and booting process. It describes how an OS manages hardware and software resources and acts as an interface between users, applications, and hardware.
2. The key components of an OS architecture include the user, user applications, system programs, the operating system itself, and underlying hardware. The booting process involves POST, BIOS initialization, and loading the operating system kernel into memory.
3. The document provides several examples of OS functions like process management, memory management, file management, I/O management, security, and user interfaces. It also discusses different types of OSs such as batch, multiprogramming, time-sharing,
The document provides information about operating systems. It defines an operating system as a program that manages computer operations and provides an interface between the user and computer. It discusses how the operating system loads into memory on startup through a bootstrap loader. It also describes basic operating system functions like managing resources, providing a user interface, running applications, and controlling hardware. It then discusses different types of operating systems including single-user, batch processing, multiprogramming, time-sharing, real-time, and networked systems.
Advanced computer architecture lesson 1 and 2Ismail Mukiibi
An OS is a program that controls the execution of application programs and acts as an interface between the user of a computer and the computer hardware. .....................
The document discusses operating systems and their functions. It defines an operating system as software that controls hardware resources and acts as an interface between applications and hardware. Operating systems have goals like executing user programs, making the computer convenient to use, and efficiently using computer resources. The document outlines the evolution of operating systems from batch processing to time-sharing systems and discusses features of multiprocessor systems. It also summarizes the services provided by operating systems like program development, execution, I/O access, file access, and error handling.
Operating systems have evolved significantly over time:
- Early operating systems in the 1950s supported batch processing and standardized I/O routines.
- In the 1960s, time-sharing systems were developed that allowed multiple users to access a computer simultaneously.
- Modern operating systems support various types of usage including batch processing, time-sharing, real-time applications, distributed systems, and parallel processing across networked computers. They provide interfaces, manage memory, processors, devices, files and perform other functions to enable efficient use of computer hardware and software resources.
The document discusses operating systems and processes. It defines an operating system as software that controls hardware and manages resources. A process is a program in execution that has a unique ID and state. Processes go through various states like running, ready, blocked/waiting, and terminated. Threads are lightweight processes that can be scheduled independently and share resources within a process. User-level threads are managed in libraries while kernel-level threads are managed by the operating system kernel.
The document discusses operating systems and processes. It defines an operating system as software that controls hardware and manages resources. A process is a program in execution that has a unique ID and state. Processes go through various states like running, ready, blocked/waiting, and terminated. Threads are lightweight processes that can be scheduled independently and share resources within a process. User-level threads are managed in libraries while kernel-level threads are managed by the operating system kernel.
The document provides an overview of system programming and system software. It discusses key components of system software like assemblers, loaders, macros, compilers, and operating systems. It describes the evolution of operating systems from simple monitors and batch systems to time-sharing, distributed, and real-time operating systems. It also outlines the typical machine structure of a computer system, including components like the CPU, memory, registers, and I/O channels.
This document provides an overview of operating system concepts including system components, batch systems, spooling, multiprogramming, time-sharing systems, distributed systems, parallel systems, real-time embedded systems, system structures, system calls, system programs, and process management. It describes the basic functions of an operating system in managing hardware resources, running application programs, and allowing multiple processes to run concurrently through techniques like multiprocessing and time-sharing.
The operating system manages all of the hardware and software on a computer. It loads at startup and allows users to interact with the computer through interfaces like Windows, Linux, or Macintosh. The operating system controls memory, processors, drivers that interface with hardware like keyboards, and input/output management. It aims to allocate resources efficiently for single or multiple users running single or multiple applications simultaneously.
An operating system manages computer hardware resources and provides common services for computer programs. It acts as an interface between users and hardware and hides hardware complexity. Early operating systems scheduled batch jobs, but modern systems support time-sharing with many simultaneous interactive users through techniques like multiprogramming and CPU scheduling. Distributed operating systems further extend these concepts across networked computers. Real-time operating systems guarantee response times for critical tasks.
The document discusses operating systems and their key concepts. It begins by defining an operating system as a program that acts as an intermediary between the user and computer hardware, allocating resources and controlling programs. It then describes the four main components of a computer system - hardware, operating system, application programs, and users. Finally, it outlines different types of operating systems including batch systems, timesharing systems, multiprocessing systems, distributed systems, client/server systems, and real-time embedded systems.
This document provides an introduction and overview of operating systems. It defines an operating system as a program that manages computer hardware resources and provides common services for computer programs. It describes the four main components of a computer system: hardware, operating system, application programs, and users. It also outlines some of the key services an operating system provides, such as program execution, I/O operations, file management, and resource allocation. Finally, it discusses the structure and evolution of modern operating systems from early batch and time-sharing systems to current multiprogramming systems.
Biometricstechnology in iot and machine learningAnkit Gupta
Ravi Kumar presented on biometrics technology. The presentation discussed what biometrics is, the importance of biometrics for security and convenience, and the history of biometrics. It described various physical and behavioral biometric characteristics like fingerprints, face recognition, iris scans, and voice recognition. Applications of biometrics technology discussed included access control, time and attendance tracking, and use at airports and ATMs. Both advantages like uniqueness and accountability and disadvantages like costs and potential for false readings were covered. Emerging biometric technologies of the future may include ear shape, body odor, and DNA identification.
Cloud computing deployment models include public, private, hybrid, and community clouds. A public cloud has infrastructure open for public use, owned by a business, academic, or government organization. Examples are Google App Engine and Amazon EC2. Workloads in a public cloud may be relocated anywhere and shared on multi-tenant machines, introducing reliability and security risks. Subscribers have limited visibility and control over their data security.
(1) Sensor cloud computing integrates large-scale sensor networks with cloud computing infrastructures to collect and process data from various sensor networks. (2) It enables large-scale data sharing and collaborations among users and applications on the cloud. (3) Sensor cloud computing delivers cloud services via sensing applications and provides a truly pervasive computing environment by using sensors as an interface between the physical and cyber worlds.
The document discusses Google Cloud Platform (GCP), which provides a set of cloud computing services including computing, storage, databases, networking, big data, machine learning, and IoT. Some key benefits of GCP include running applications on Google's global infrastructure, focusing on product development rather than system administration, mixing and matching different cloud services, and scaling applications easily to handle millions of users in a cost-effective way. GCP offers both fully managed platform services and flexible virtual machines. It also provides storage, database, and networking services to store and access data.
Cloud computing provides economic benefits through common infrastructure, location independence, online connectivity, utility pricing, and on-demand resources. Pooled, standardized resources lower overhead costs and increase utilization through statistical multiplexing. Aggregating independent workloads reduces variability, lowering the cost per delivered resource. In reality, workloads may be correlated, limiting these statistical economies. However, mid-size providers can achieve scale benefits by aggregating independent demands. Large cloud providers utilize scale through low-cost components and automation.
Cloud computing provides on-demand access to shared computing resources like networks, servers, storage, applications and services. It has essential characteristics like on-demand self-service, broad network access, resource pooling and rapid elasticity. The cloud services models include Software as a Service (SaaS), Platform as a Service (PaaS), and Infrastructure as a Service (IaaS). The deployment models are private cloud, community cloud, public cloud and hybrid cloud.
This document discusses resource management in cloud computing. It begins by defining different types of resources, including physical resources like computers and disks, and logical resources like execution and communication applications. It then discusses the objectives and challenges of resource management, such as scalability, quality of service, and reducing overheads and latency. The document outlines various aspects of resource management including provisioning, allocation, mapping, adaptation, discovery, brokering, estimation, and modeling. It also discusses approaches to resource provisioning, allocation, mapping, adaptation and lists some key performance metrics.
This document discusses resource management in cloud computing and strategies for improving energy efficiency. It describes different resource types, including physical and logical resources. It then discusses how resource management controls access to cloud capabilities. The document outlines how data center power consumption is growing rapidly and motivating the need for green computing approaches. These include power-aware and thermal-aware scheduling of virtual machines, optimized data center design, and minimizing the size of virtual machine images to reduce energy usage. The overall summary advocates an integrated green cloud framework combining various efficiency techniques.
The document describes MapReduce, a programming model developed at Google for processing large datasets in a distributed computing environment. It discusses how MapReduce works, with mappers processing input data in parallel to generate intermediate key-value pairs, and reducers then merging all intermediate values associated with the same key. Three examples of MapReduce problems and their solutions are provided to illustrate how MapReduce can be used to calculate averages, group data by gender to find totals and averages, and categorize words by length.
1. The document discusses the economic properties of cloud computing including common infrastructure, location independence, online connectivity, utility pricing, and on-demand resources.
2. It provides details on utility pricing models and how cloud computing can be cheaper than owning resources depending on the ratio of peak to average demand.
3. On-demand cloud resources allow organizations to dynamically scale up or down based on changing demand levels without penalty, which provides significant economic benefits over static resource provisioning.
The document discusses service level agreements (SLAs) in cloud computing. It defines an SLA as a formal contract between a service provider and consumer that defines the level of availability and performance guaranteed by the provider. SLAs contain service level objectives that are measurable conditions used to select cloud providers. The document provides two example problems, the first calculating if an availability guarantee was violated given total outage time, and the second calculating the effective cost for a service given availability percentages and outage durations were below guarantees.
This document discusses security issues in collaborative Software as a Service (SaaS) cloud environments. It presents four objectives: 1) developing a framework to select a trustworthy SaaS cloud provider, 2) recommending access requests from anonymous users, 3) mapping authorized permissions to local roles, and 4) dynamically detecting and removing access policy conflicts. The document outlines challenges in securing loosely coupled collaborations in clouds and motivates addressing security in SaaS cloud delivery through risk estimation, access conflict mediation, and establishing trust in cloud service providers.
The document summarizes research on security risks in cloud computing due to multi-tenancy. It discusses how researchers were able to:
1) Map the physical layout of Amazon EC2 instances to determine placement parameters to achieve co-residence with target VMs.
2) Verify co-residence through network checks and a covert channel with over 60% success.
3) Cause co-residence by launching many probes or targeting recently launched instances, achieving up to 40% success.
4) Exploit co-residence to measure cache usage and network traffic, allowing for load monitoring and covert channels to leak information.
The document discusses security issues related to cloud computing. It begins by defining cloud computing and its economic advantages for consumers and providers. However, security concerns are a barrier to wider adoption of cloud computing. The document then examines seven specific security risks identified by Gartner: privileged user access, regulatory compliance and audit, data location, data segregation, recovery, investigative support, and long-term viability. Additional security issues discussed include virtualization, access control, application security, and data life cycle management. Throughout, the document emphasizes the importance of customers understanding security responsibilities and having visibility into a cloud provider's security practices.
This document discusses cloud computing security and covers the following key points in 15 sentences or less:
Cloud security involves ensuring confidentiality, integrity, and availability of data. There are four main types of security attacks: interruption, interception, modification, and fabrication. Security threats can be classified as disclosure, deception, disruption, or usurpation. Security policies define what is and is not allowed, while mechanisms enforce these policies. Security aims to prevent attacks, detect violations, and enable recovery from any successful attacks. Trust and assumptions underlie all aspects of security policies, mechanisms, operations, and issues.
This document discusses the development of a cloud computing broker that can intelligently select cloud providers and services for customers based on their requirements. It aims to address issues like varying quality of service across providers, flexibility in customer needs, and avoiding vendor lock-in. The proposed broker uses fuzzy logic techniques to select suitable providers based on promised quality of service and trustworthiness. It also monitors services and can trigger migration to another provider if service level agreements are not met. Case studies on infrastructure and software marketplaces demonstrate that the fuzzy-based broker performs better than conventional cost-based approaches.
Mobile cloud computing combines cloud computing, mobile computing and wireless networks to provide data storage and processing services to mobile users without requiring powerful device hardware. This allows mobile apps to be built and updated quickly using cloud services and to seamlessly continue across different devices. Key benefits include improved data access, reliability and flexibility compared to relying solely on local device resources. Effective mobile cloud computing requires dynamic partitioning of apps between mobile devices and cloud servers to optimize for factors like energy usage and execution time.
This document outlines the revised syllabus for the Bachelor of Technology in Computer Science and Engineering program at Gurukula Kangri Vishwavidyalaya in Haridwar, India effective from the 2015-2016 academic year. It lists the courses, subjects, evaluation schemes, credits and codes for each semester of the 4-year program. The syllabus includes both theory and practical courses covering topics such as engineering chemistry, mathematics, programming, data structures, operating systems, databases and more. It provides the framework for the BTech CSE degree over 8 semesters of study.
The document discusses the benefits of exercise for both physical and mental health. It notes that regular exercise can reduce the risk of diseases like heart disease and diabetes, improve mood, and reduce feelings of stress and anxiety. The document recommends that adults get at least 150 minutes of moderate exercise or 75 minutes of vigorous exercise per week to gain these benefits.
A workshop hosted by the South African Journal of Science aimed at postgraduate students and early career researchers with little or no experience in writing and publishing journal articles.
This slide is special for master students (MIBS & MIFB) in UUM. Also useful for readers who are interested in the topic of contemporary Islamic banking.
How to Setup Warehouse & Location in Odoo 17 InventoryCeline George
In this slide, we'll explore how to set up warehouses and locations in Odoo 17 Inventory. This will help us manage our stock effectively, track inventory levels, and streamline warehouse operations.
A review of the growth of the Israel Genealogy Research Association Database Collection for the last 12 months. Our collection is now passed the 3 million mark and still growing. See which archives have contributed the most. See the different types of records we have, and which years have had records added. You can also see what we have for the future.
Main Java[All of the Base Concepts}.docxadhitya5119
This is part 1 of my Java Learning Journey. This Contains Custom methods, classes, constructors, packages, multithreading , try- catch block, finally block and more.
The simplified electron and muon model, Oscillating Spacetime: The Foundation...RitikBhardwaj56
Discover the Simplified Electron and Muon Model: A New Wave-Based Approach to Understanding Particles delves into a groundbreaking theory that presents electrons and muons as rotating soliton waves within oscillating spacetime. Geared towards students, researchers, and science buffs, this book breaks down complex ideas into simple explanations. It covers topics such as electron waves, temporal dynamics, and the implications of this model on particle physics. With clear illustrations and easy-to-follow explanations, readers will gain a new outlook on the universe's fundamental nature.
This presentation was provided by Steph Pollock of The American Psychological Association’s Journals Program, and Damita Snow, of The American Society of Civil Engineers (ASCE), for the initial session of NISO's 2024 Training Series "DEIA in the Scholarly Landscape." Session One: 'Setting Expectations: a DEIA Primer,' was held June 6, 2024.
हिंदी वर्णमाला पीपीटी, hindi alphabet PPT presentation, hindi varnamala PPT, Hindi Varnamala pdf, हिंदी स्वर, हिंदी व्यंजन, sikhiye hindi varnmala, dr. mulla adam ali, hindi language and literature, hindi alphabet with drawing, hindi alphabet pdf, hindi varnamala for childrens, hindi language, hindi varnamala practice for kids, https://www.drmullaadamali.com
How to Manage Your Lost Opportunities in Odoo 17 CRMCeline George
Odoo 17 CRM allows us to track why we lose sales opportunities with "Lost Reasons." This helps analyze our sales process and identify areas for improvement. Here's how to configure lost reasons in Odoo 17 CRM
Walmart Business+ and Spark Good for Nonprofits.pdfTechSoup
"Learn about all the ways Walmart supports nonprofit organizations.
You will hear from Liz Willett, the Head of Nonprofits, and hear about what Walmart is doing to help nonprofits, including Walmart Business and Spark Good. Walmart Business+ is a new offer for nonprofits that offers discounts and also streamlines nonprofits order and expense tracking, saving time and money.
The webinar may also give some examples on how nonprofits can best leverage Walmart Business+.
The event will cover the following::
Walmart Business + (https://business.walmart.com/plus) is a new shopping experience for nonprofits, schools, and local business customers that connects an exclusive online shopping experience to stores. Benefits include free delivery and shipping, a 'Spend Analytics” feature, special discounts, deals and tax-exempt shopping.
Special TechSoup offer for a free 180 days membership, and up to $150 in discounts on eligible orders.
Spark Good (walmart.com/sparkgood) is a charitable platform that enables nonprofits to receive donations directly from customers and associates.
Answers about how you can do more with Walmart!"
Executive Directors Chat Leveraging AI for Diversity, Equity, and InclusionTechSoup
Let’s explore the intersection of technology and equity in the final session of our DEI series. Discover how AI tools, like ChatGPT, can be used to support and enhance your nonprofit's DEI initiatives. Participants will gain insights into practical AI applications and get tips for leveraging technology to advance their DEI goals.
Executive Directors Chat Leveraging AI for Diversity, Equity, and Inclusion
intro to OS
1. Operating Systems/Introduction to Operating System Lecture Notes
PCP Bhatt/IISc, Bangalore M1/V1/June 04/1
Module 1: Introduction to Operating System
Operating System (or shortly OS) primarily provides services for running applications on
a computer system.
Need for an OS:
The primary need for the OS arises from the fact that user needs to be provided with
services and OS ought to facilitate the provisioning of these services. The central part of a
computer system is a processing engine called CPU. A system should make it possible
for a user’s application to use the processing unit. A user application would need to store
information. The OS makes memory available to an application when required. Similarly,
user applications need use of input facility to communicate with the application. This is
often in the form of a key board, or a mouse or even a joy stick (if the application is a
game for instance).
The output usually provided by a video monitor or a printer as some times the user may
wish to generate an output in the form of a printed document. Output may be available
in some other forms. For example it may be a video or an audio file.
Let us consider few applications.
• Document Design
• Accounting
• E-mail
• Image processing
2. Operating Systems/Introduction to Operating System Lecture Notes
PCP Bhatt/IISc, Bangalore M1/V1/June 04/2
• Games
We notice that each of the above application requires resources for
• Processing information
• Storage of Information
• Mechanism to inputting information
• Provision for outputting information
• These service facilities are provided by an operating system regardless of the
nature of application.
The OS offers generic services to support all the above operations. These operations in
turn facilitate the applications mentioned earlier. To that extent an OS operation is
application neutral and service specific.
User and System View:
From the user point of view the primary consideration is always the convenience. It
should be easy to use an application. In launching an application, it helps to have an icon
which gives a clue which application it is. We have seen some helpful clues for launching
a browser, e-mail or even a document preparation application. In other words, the human
computer interface which helps to identify an application and its launch is very useful.
This hides a lot of details of the more elementary instructions that help in selecting the
application. Similarly, if we examine the programs that help us in using input devices like
a key board – all the complex details of character reading program are hidden from the
user. The same is true when we write a program. For instance, when we use a
programming language like C, a printf command helps to generate the desired form of
output. The following figure essentially depicts the basic schema of the use of OS from a
user stand point. However, when it comes to the view point of a system, the OS needs to
ensure that all the system users and applications get to use the facilities that they need.
3. Operating Systems/Introduction to Operating System Lecture Notes
PCP Bhatt/IISc, Bangalore M1/V1/June 04/3
Also, OS needs to ensure that system resources are utilized efficiently. For instance,
there may be many service requests on a Web server. Each user request need to be
serviced. Similarly, there may be many programs residing in the main memory. The
system need to determine which programs are active and which need to await some
form of input or output. Those that need to wait can be suspended temporarily from
engaging the processor. This strategy alone enhances the processor throughput. In
other words, it is important for an operating system to have a control policy and
algorithm to allocate the system resources.
The Evolution:
It would be worthwhile to trace some developments that have happened in the last
four to five decades. In the 1960s, the common form of computing facility was a
mainframe computer system. The mainframe computer system would be normally
housed in a computer center with a controlled environment which was usually an air
conditioned area with a clean room like facility. The users used to bring in a deck of
punched cards which encoded the list of program instructions.
The mode of operation was as follows:
User would prepare a program as a deck of punched cards.
The header cards in the deck were the “job control” cards which would indicate
which compiler was to be used (like Fortran / Cobol compilers).
The deck of cards would be handed in to an operator who would collect such jobs
from various users.
COMPUTER HARDWARE
OPERATING SYSTEM
SYSTEM AND APPLICATION PROGRAMS
USER 1 USER 2 USER n………
4. Operating Systems/Introduction to Operating System Lecture Notes
PCP Bhatt/IISc, Bangalore M1/V1/June 04/4
The operators would invariably group the submitted jobs as Fortran jobs, Cobol
jobs etc. In addition, these were classified as “long jobs” that required
considerable processing time or short jobs which required a short and limited
computational time.
Each set of jobs was considered as a batch and the processing would be done for a batch.
Like for instance there may be a batch of short Fortran jobs. The output for each job
would be separated and turned over to users in a collection area. This scenario clearly
shows that there was no interactivity. Users had no direct control. Also, at any one time
only one program would engage the processor. This meant that if there was any input or
output in between processing then the processor would wait idling till such time that the
I/O is completed. This meant that processor would idling most of the time as processor
speeds were orders of magnitude higher than the input or output or even memory units.
Clearly, this led to poor utilization of the processor. The systems that utilized the CPU
and memory better and with multiple users connected to the systems evolved over a
period of time as shown in Table1.1.
.
At this time we would like to invoke Von - Neumann principle of stored program
operation. For a program to be executed it ought to be stored in the memory. In the
scheme of things discussed in the previous paragraph, we notice that at any time only one
program was kept in the memory and executed. In the decade of 70s this basic mode of
operation was altered and system designers contemplated having more than one program
resident in the memory. This clearly meant that when one program is awaiting
5. Operating Systems/Introduction to Operating System Lecture Notes
PCP Bhatt/IISc, Bangalore M1/V1/June 04/5
completion of an input or output, another program could, in fact, engage the CPU..
Late 60’s and early 70’s
Storing multiple executables (at the same time) in the main memory is called
multiprogramming. With multiple excutables residing in the main memory, the
immediate consideration is: we now need a policy to allocate memory and processor time
to the resident programs. It is obvious that by utilizing the processor for another process
when a process is engaged in input or output the processor utilization and, therefore, its
output are higher. Overall, the multiprogramming leads to higher throughput for this
reason.
Multiprogramming
While multiprogramming did lead to enhanced throughput of a system, the systems still
essentially operated in batch processing mode.
1980’s
In late 70s and early part of the decade of 80s the system designers offered some
interactivity with each user having a capability to access system. This is the period when
the timeshared systems came on the scene.
Basically, the idea is to give every user an illusion that all the system resources were
6. Operating Systems/Introduction to Operating System Lecture Notes
PCP Bhatt/IISc, Bangalore M1/V1/June 04/6
available to him as his program executed. To strengthen this illusion a clever way was
devised by which each user was allocated a slice of time to engage the processor. During
the allocated time slice a users’ program would be executed. Now imagine if the next turn
for the same program comes quickly enough, the user would have an illusion that the
system was continuously available to his task. This is what precisely time sharing
systems attempted – giving each user a small time slice and returning back quickly
enough so that he never feels lack of continuity. In fact, he carries an impression that the
system is entirely available to him alone.
Timeshared systems clearly require several design considerations. These include the
following: How many programs may reside in the main memory to allow, and also
sustain timesharing? What should be the time slice allocated to process each program?
How would one protect a users’ program and data from being overwritten by another
users’ program? Basically, the design trends that were clearly evident during the decade
of 1970-80 were: Achieve as much overlapping as may be feasible between I/O and
processing. Bulk storage on disks clearly witnessed a phenomenal growth. This also
helped to implement the concept to offer an illusion of extended storage. The concept of
“virtual storage” came into the vogue. The virtual storage essentially utilizes these disks
to offer enhanced addressable space. The fact that only that part of a program that is
currently active need be in the main memory also meant that multi-programming could
support many more programs. In fact this could be further enhanced as follows:
1. Only required active parts of the programs could be swapped in from disks.
2. Suspended programs could be swapped out.
This means that a large number of users can access the system. This was to satisfy the
notion that “computing” facility be brought to a user as opposed to the notion that the
“user go to compute”. The fact that a facility is brought to a user gives the notion of a
utility or a service in its true sense. In fact, the PC truly reflects the notion of “computing
utility” - it is regarded now as a personal productivity tool.
7. Operating Systems/Introduction to Operating System Lecture Notes
PCP Bhatt/IISc, Bangalore M1/V1/June 04/7
Swapping of program parts main memory - disc, vice-versa
It was in early 1970s Bell Laboratory scientists came up with the now well known OS:
Unix. Also, as the microcomputers came on scene in 1980s a forerunner to current DOS
was a system called CP/M. The decade of 1980s saw many advances with the promise of
networked systems. One notable project amongst these was the project Athena at MIT in
USA. The project forms the basis to several modern developments. The client-server
paradigm was indeed a major fall out. The users could have a common server to the so
called X-terminals.
The X windows also provided many widgets to support convenient human computer
interfaces. Using X windows it is possible to create multiple windows. In fact each of the
windows offers a virtual terminal. In other words it is possible to think about each of
these windows as a front-end terminal connection. So it is possible to launch different
applications from each of the windows. This is what you experience on modern day PC
which also supports such an operating environment.
CP/M based computer
Networking topologies like star, ring and general graphs, as shown in the figure, were
being experimented with protocols for communication amongst computers evolved. In
In our discussions, we shall discuss many of the above
issues in greater detail as we move to later chapters. On
the micro-computer front the development was aimed at
relieving the processor from handling input output
responsibilities. The I/O processing was primarily handled
by two mechanisms: one was BIOS and the other was the
graphics cards to drive the display. The processor now
was relieved from regulating the I/O. This made it
possible to utilize the processor more effectively for other
processing tasks. With the advent of 1990s the computer
communication was pretty much the order of the day.
8. Operating Systems/Introduction to Operating System Lecture Notes
PCP Bhatt/IISc, Bangalore M1/V1/June 04/8
particular, the TCP/IP suite of network protocols were implemented. The growth in the
networking area also resulted in giving users a capability to establish communication
between computers. It was now possible to connect to a remote computer using a telnet
protocol. It was also possible to get a file stored in a remote location using a file transfer
(FTP) protocol. All such services are broadly called network services.
x x x
(a) Star (b) Ring (c) Tree
Let’s now briefly explore where the OS appears in the context of the software and
application.
Let’s consider a scenario where we need to embed the computer system in an industrial
application. This may be regulating the temperature of a vessel in a process control. In a
typical process control scenario
• Monitoring – initializes and activates the hardware.
• Input – Reads the values from sensors and stores it in register.
• Decision – checks whether the readings are within the range.
• Output – responds to the situation.
• Scenario: A temperature monitoring chemical process.
9. Operating Systems/Introduction to Operating System Lecture Notes
PCP Bhatt/IISc, Bangalore M1/V1/June 04/9
• What we need: A supervisory program to raise an alarm when temperature goes
beyond a certain band.
• The desired sequence of operational events: Measure input temperature,
process the most recent measurement, perform an output task.
The computer system may be employed in a variety of operational scenarios like a bank,
airlines reservation system, university admissions and several others. In each of these we
need to provide the resources for
• Processing
• User access to the system
• Storage and management of information
• Protection of information against accidental and intentional misuse
• Support for data processing activities
• Communication with I/O devices
• Management of all activities in a transparent manner.
Let’s now review What Does an OS Do?
• Power On Self Test (POST)
• Resource management
10. Operating Systems/Introduction to Operating System Lecture Notes
PCP Bhatt/IISc, Bangalore M1/V1/June 04/10
• Support for multi-user
• Error Handling
• Communication support over Network
• (Optional) Deadline support so that safety critical application run and fail
gracefully
Operational View:
Let’s briefly look at the underlying principle of operation of a computer system. Current
systems are based on The Von-Neumann principle. The principle states that a program is
initially stored in memory and executed by fetching an instruction at a time.
The basic cycle of operation is
Fetch an instruction (Fetch)
Interpret the instruction (Decode)
Execute the instruction (Execute)
Modern systems allow multiple users to use a computer system. Even on a stand alone
PC there may be multiple application which are running simultaneously. For instance, we
have a mail program receiving mails, a clock to display time while we may be engaged in
browsing a word process.
In other words OS need to schedule the processor amongst all the application
simultaneously without giving an impression that the processor time is being divided and
scheduled per an application.
An Operational Overview:
• Processor – schedule and allocate processor time.
Operating Cycle Memory Map
11. Operating Systems/Introduction to Operating System Lecture Notes
PCP Bhatt/IISc, Bangalore M1/V1/June 04/11
• Memory – executes program and access data
• Input output devices
• Communication with devices
• Mutual exclusion – schedule the usage of shared device and fair access
• Shell of an OS
• Human computer interface (HCI/CHI)
A Modern Computer System
The peripheral devices communicate in a mode known as interrupt mode .Typically
human input is considered important and often uses this mode. This is so because human
desire to guide the operation. For instance, we use a mouse click or a key board input.
These require immediate attention by needing an appropriate interruption service.
12. Operating Systems/Introduction to Operating System Lecture Notes
PCP Bhatt/IISc, Bangalore M1/V1/June 04/12
Processes and Tools:
Processes:
Most OSs support a notion that a program in execution may be regarded as a process.
Clearly, with multiple applications active at the same time there are many processes that
are active. The OS needs to manage all these processes. Often applications may spawn
processes that need to communicate with each other. Such inter process communication
forms the primary basis of distributed computing.
With the coming together of communications network and computers it is possible to
create processes on one machine and seek services from another machine. The machine
seeking the services is called client machine and the machine offering services is called
server machine. When you use a web browser, your computer is the client and the
machine which provides the content for browsing is the web server. All modern OSs
support client-server operations for service provisioning.
Tools:
One important issue is: how does one use the services efficiently? In addition to the
device handling utilities, most OSs provide many other general purpose utilities as a set
of packaged tools. The tools help us to think in terms of higher level of operations. In the
absence of tools and tool kits we would be required to write a fresh program each time.
13. Operating Systems/Introduction to Operating System Lecture Notes
PCP Bhatt/IISc, Bangalore M1/V1/June 04/13
As an example, consider a sort utility in UNIX. It supports identification of fields in a file
with multi field structured data. Sort allows us to sort on a chosen field on a file. Imagine
if we had to write a sort program every time we had a set of records making a file. Also
look at the support we derive from the compression software tools like compression of
files for long-term storage or transmission (Zip tools in windows environment). It would
be stupendous task to write a compression program for every file transfer.
Trends in Computing:
In this section we shall examine other trends in computing. The application scenario can
considerably influence the types of services that need to be managed by an operating
system. One such example is the emergence of parallel computing.
Parallel Computing:
There are many problem solving situations like weather forecasting, image processing,
statistical data analysis and simulation, pharmaceutical drug synthesis and others where
using a single processor becomes a limiting factor
Parallel Computing
File Server Recording PC
Switch
Processing Nodes
The emergence of micro-computer, in particular Apple
mackintosh, offered improvement in the manner in which
human computer interfaces could be utilized for I/O and
also for launching the applications. Apple was the first
computer system to use mouse clicks to launch application.
It also was the first environment to offer a “drag and drop”
facility. In fact this set trends to offer icon driven convenient
ways of launching applications.
Apple Mac
Computer
For this class of problems one has to resort to
parallel processing. In a parallel processing
environment we may have a problem split in such
a way that different parts of the same problem use
a different processor with minimal communication.
Parallel processing together with the network
based services supports a mode of computing
which is referred some times as distributed
computing. In distributed computing environment
it is also possible to support distribution of data,
files and execution of processes.
14. Operating Systems/Introduction to Operating System Lecture Notes
PCP Bhatt/IISc, Bangalore M1/V1/June 04/14
In some other situation a computer system may be a part of a control system. For
instance, the system may be utilized for regulating a utility – like electrical power supply.
There is usually an elaborate instrumentation to keep track of the health of plant or a
process. In these situations the instrumentation monitors physical quantities like pressure,
temperature or speed and the process needs to respond in a real-time mode to be able to
regulate the operation of the system.
Real - Time Systems:
Another category of real-time systems are those that are used to offer services like ATM
(Automatic teller machine) or airlines reservation systems. The systems of the latter kind
are often called transaction oriented systems. This is because the basic information
processing involves a transaction.
ATM
temperature in a process vessel exceeds a certain limit. The operating system used in such
real-time systems is often referred to as RTOS.
In addition, to the above kind of systems, we are now witnessing emergence of a class of
systems that are embedded within an application.
For instance, it is not unusual to find up to four microprocessors in a car. These may be
used for regulating fuel injection, cruise control or even operation of brakes. Similarly,
there are microcontrollers embedded in washing machines. The presence of these systems
As an example, consider processing a request like
withdrawing money. It is a financial transaction,
which requires updating accounts within an
acceptable response time. Both the process control
systems and transaction oriented systems are real
time systems in which the response time to a request
is critical. The main objective is to assure timeliness
in response. The transaction oriented systems may
even use the computer network extensively and
often. The process control systems may be bus
based or may have local area network as well. Both
these systems invariably recognize an event and
offer a response. In a transaction oriented system
like ATM, it may be a card input. In a process
control system an event may be detected when the
15. Operating Systems/Introduction to Operating System Lecture Notes
PCP Bhatt/IISc, Bangalore M1/V1/June 04/15
is totally transparent to the user. He does not experience the presence of the system while
using the gadgets. This is because the operating environment only requires minimal
control buttons and response panels. The embedded systems are designed completely
with a different philosophy. These are not general purpose computing environments.
Instead, these have dedicated mode of operation. In these cases the operating system is
not aimed at raising through put with general purpose utility back-ups. Instead these
systems are designed with minimal and dedicated services. The minimal service
provisioning is done using a minimal OS kernel often called micro-kernel. A well known
Simputer
Wireless Systems:
Wireless systems in general allow access from any where any time. These are also called
ubiquitous systems. The ubiquity comes from the fact that unlike a wired system, the
medium of communication is air which can be utilized from anywhere anytime.
Finally, the other major trend which we are witnessing now is driven by Web – the world
wide web. All modern systems are internet compliant and allow a user to connect to the
rest of the world. Web offers commercial organizations to offer their merchandise on the
web. Also, it gives the consumers an opportunity to seek services using the web. In our
country now Web is quite extensively utilized for railway reservation and also for the air
ticket booking. Web can also offer other services. For example, down loading music is
common. Web can, and in due course of time will, offer services which are currently
offered by operating systems. In fact, then we will have the paradigm where “network is
the computer” as was proclaimed by the SUN CEO, Scott McNealy a few years ago.
embedded system is a common mobile phone and a personal
digital assistant (PDA). One important Indian contribution in
this class of systems is a Simputer. A Simputer can be utilized
as a PDA. Simputer can also be used in a dedicated
application. Simputers have also been upgraded to support
wireless connectivity.