The document provides an overview of operating system concepts including:
1) The role of an operating system as an intermediary between the user and computer hardware to execute programs and efficiently allocate resources.
2) How a computer system is divided into hardware, operating system, application programs, and users.
3) Key operating system functions like process management, memory management, storage management, and how it provides abstraction from the physical hardware.
4) Computer organization with CPUs, memory, I/O devices, and how interrupts allow concurrent processing.
The document provides an overview of operating systems from multiple perspectives:
1) It defines an operating system as the program that controls and coordinates the use of hardware among application programs.
2) It discusses the goals of an operating system as efficient operation, ease of use, and maximizing resource utilization.
3) It describes the basic components of a computer system including CPU, memory, storage hierarchy, I/O structure, and how interrupts work.
The document discusses operating systems and their components. It defines an operating system as a program that acts as an intermediary between the user and computer hardware. It describes the structure of a computer system including hardware, operating system, application programs, and users. It also discusses operating system objectives, functions, and major components such as process management, memory management, storage management, and protection.
This chapter introduces operating system concepts and provides an overview of operating system components and functions. It discusses how operating systems act as an intermediary between the user and computer hardware to manage resources and execute programs. The chapter describes computer system organization with CPUs, memory, and I/O devices. It also outlines operating system structure for multiprogramming and timesharing, and key operating system operations like process management, memory management, storage management, and security.
An operating system manages computer hardware resources and allows the use of applications. Popular operating systems include Linux, Android, iOS, Mac OS X, and Microsoft Windows. Operating systems can be found on devices like computers, phones, game consoles, and servers. There are different types of operating systems including graphical user interface, multi-user, multi-processing, multi-tasking, distributed, and embedded operating systems.
The document discusses operating systems and computer system architecture. It defines an operating system as a program that manages a computer's hardware resources and provides common services for application software. It describes the components of a computer system as the CPU, memory, I/O devices, and how the operating system controls and coordinates their use. It also discusses different types of operating systems designed for single-user systems, multi-user systems, servers, handheld devices, and embedded 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 chapter introduces operating systems by describing their main components and functions. It discusses how operating systems act as an intermediary between the user and computer hardware to execute programs and manage system resources like the CPU, memory, storage and I/O devices. It also provides an overview of computer system organization, operating system structure, common operations and how operating systems handle processes, memory and storage management.
Operating System Concepts PresentationNitish Jadia
Operating System Concepts was presented by Nitish Jadia in Bhopal null meet, to make people aware of the internal workings of the OS they use.
The contents and explanation of this PPT was inspired and taken from Operating System Concepts by by silberschatz galvin gagne.
The document provides an overview of operating systems from multiple perspectives:
1) It defines an operating system as the program that controls and coordinates the use of hardware among application programs.
2) It discusses the goals of an operating system as efficient operation, ease of use, and maximizing resource utilization.
3) It describes the basic components of a computer system including CPU, memory, storage hierarchy, I/O structure, and how interrupts work.
The document discusses operating systems and their components. It defines an operating system as a program that acts as an intermediary between the user and computer hardware. It describes the structure of a computer system including hardware, operating system, application programs, and users. It also discusses operating system objectives, functions, and major components such as process management, memory management, storage management, and protection.
This chapter introduces operating system concepts and provides an overview of operating system components and functions. It discusses how operating systems act as an intermediary between the user and computer hardware to manage resources and execute programs. The chapter describes computer system organization with CPUs, memory, and I/O devices. It also outlines operating system structure for multiprogramming and timesharing, and key operating system operations like process management, memory management, storage management, and security.
An operating system manages computer hardware resources and allows the use of applications. Popular operating systems include Linux, Android, iOS, Mac OS X, and Microsoft Windows. Operating systems can be found on devices like computers, phones, game consoles, and servers. There are different types of operating systems including graphical user interface, multi-user, multi-processing, multi-tasking, distributed, and embedded operating systems.
The document discusses operating systems and computer system architecture. It defines an operating system as a program that manages a computer's hardware resources and provides common services for application software. It describes the components of a computer system as the CPU, memory, I/O devices, and how the operating system controls and coordinates their use. It also discusses different types of operating systems designed for single-user systems, multi-user systems, servers, handheld devices, and embedded 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 chapter introduces operating systems by describing their main components and functions. It discusses how operating systems act as an intermediary between the user and computer hardware to execute programs and manage system resources like the CPU, memory, storage and I/O devices. It also provides an overview of computer system organization, operating system structure, common operations and how operating systems handle processes, memory and storage management.
Operating System Concepts PresentationNitish Jadia
Operating System Concepts was presented by Nitish Jadia in Bhopal null meet, to make people aware of the internal workings of the OS they use.
The contents and explanation of this PPT was inspired and taken from Operating System Concepts by by silberschatz galvin gagne.
This chapter provides an introduction to operating systems, including their functions and components. It describes how operating systems act as intermediaries between users and computer hardware to manage resources and execute programs. It discusses the structure of computer systems and how they are composed of hardware, operating systems, application programs, and users. It also provides overviews of key operating system concepts like processes, memory management, storage management, and protection and security.
The document introduces different types of operating systems including mainframe systems, desktop systems, multiprocessor systems, distributed systems, clustered systems, real-time systems, and handheld systems. It defines the core components of an operating system including the hardware, OS, application programs, and users. It also provides definitions for key OS concepts such as the resource allocator and kernel.
The document discusses various topics related to operating systems including:
- An operating system manages computer hardware and acts as an intermediary between users and the computer. It allocates resources and controls programs to prevent errors.
- The kernel is the core of the operating system that runs at all times. Batch systems allow jobs to run without user interaction. Multiprogramming and time-sharing increase CPU utilization by switching between multiple programs.
- Multiprocessor systems have multiple CPUs to improve performance. Process management, memory management, and protection systems are core components of most operating systems.
This document provides an overview of an operating systems concepts textbook. It introduces key topics covered in the book like computer system organization, operating system structure and functions, process management, memory management, storage management, and security. The objectives are to provide a tour of major OS components and coverage of basic computer system organization. It describes the four main components of a computer system and how the operating system acts as an intermediary between the user, hardware, and application programs.
This document provides an overview of the key topics covered in an introductory operating systems course, including computer system organization, operating system structure and operations, process management, memory management, storage management, protection and security, kernel data structures, and different computing environments. The objectives of the course are to describe basic computer system organization, provide a tour of major operating system components, and explore open-source operating systems and different types of computing environments like mobile, distributed, client-server, and peer-to-peer.
This document provides information about various computer hardware components and concepts. It defines RAM as temporary memory that is erased when a computer is turned off, while ROM is permanent memory. It also describes power supplies, interrupts, plug and play devices, the BIOS, and the boot process. Expansion buses like ISA, EISA, VESA, PCI and interfaces like SCSI, IDE, and ATA are explained. Common hardware issues like beep codes and memory types are also covered.
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 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.
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.
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.
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.
Unit I
Computer System Overview-Basic Elements, Instruction Execution, Interrupts, Memory Hierarchy, Cache Memory, Direct Memory Access, Multiprocessor and Multicore Organization. Operating system overview-objectives and functions, Evolution of Operating System.- Computer System OrganizationOperating System Structure and Operations- System Calls, System Programs, OS Generation and System Boot.
Definition of Computer
Classification of Computer
Applications of Computer
Block Diagram and Working of Computer System
Different Peripheral Devices
Main Storage and Auxiliary Storage Devices
Computer Hardware and Software
This document discusses multiprogramming and time sharing in operating systems. It defines multiprogramming as allowing multiple programs to execute concurrently by assigning pending work to idle processors and I/O devices. Time sharing extends multiprogramming by rapidly switching between programs so that each program executes for a fixed time quantum, giving users the impression that the entire system is dedicated to their use. The key aspects covered are the concepts of processes, CPU scheduling, and how multiprogramming and time sharing improve resource utilization.
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.
This document provides an overview of operating system concepts, including:
- The role of an operating system is to act as an intermediary between the user and computer hardware to execute programs and efficiently manage system resources.
- A computer system consists of hardware, operating system, application programs, and users. The operating system controls and coordinates the hardware resources among applications and users.
- Operating systems perform process management, memory management, storage management, and security functions to allocate resources and control concurrent execution of programs.
The document provides an overview of operating systems and some of their key concepts. It discusses why operating systems are needed, defining them as programs that act as intermediaries between users and computer hardware. It describes the four main components of a computer system - hardware, operating system, application programs, and users. Finally, it outlines some of the main functions and goals of operating systems, such as executing user programs efficiently and making the computer system convenient to use.
The document discusses the structure and components of an operating system. It covers computer hardware structure including the CPU, storage, and I/O devices. It then discusses system calls which allow user programs to request services from the operating system. Finally, it outlines some key components of operating systems including process management, memory management, file management, I/O management and more.
The document discusses operating system interview questions and answers. It covers topics such as the definition of an operating system, basic functions of an OS, types of operating systems, kernel functions, process states, virtual memory, deadlocks, threads, synchronization, scheduling algorithms, and memory management. Some key points covered are that an OS acts as an intermediary between the user and hardware, the kernel provides basic services, processes can be in states like running, waiting, or ready, and virtual memory uses timesharing to simulate more memory than physically available.
This document provides an introduction to operating systems. It defines an operating system as a program that acts as an intermediary between the user and computer hardware. The key components of a computer system are described as hardware, operating system, application programs, and users. Operating systems manage resources, control programs, and provide common services like memory management, process management, and I/O management. Various computing environments are explored, including traditional systems, mobile systems, distributed systems, client-server models, and virtualization.
This document provides an overview of operating system concepts from the 8th edition of the textbook "Operating System Concepts Essentials" by Silberschatz, Galvin and Gagne. It defines an operating system as a program that acts as an interface between the user and computer hardware. A computer system is divided into four components - hardware, operating system, application programs, and users. The operating system performs two main roles - as an extended machine that hides hardware complexity and as a resource manager that controls shared access to devices, memory and processors. It also provides various services to users and applications like program execution, I/O, file management, and communication between processes.
This document provides an overview of operating system concepts from the textbook "Operating System Concepts with Java – 8th Edition". It discusses the definition and goals of an operating system, how it acts as an intermediary between the user and computer hardware. It also describes computer system organization including CPUs, memory, I/O devices, and how interrupts work. Finally, it covers operating system structure including multiprogramming and timesharing to enable efficient usage of system resources and interactive computing.
This chapter provides an introduction to operating systems, including their functions and components. It describes how operating systems act as intermediaries between users and computer hardware to manage resources and execute programs. It discusses the structure of computer systems and how they are composed of hardware, operating systems, application programs, and users. It also provides overviews of key operating system concepts like processes, memory management, storage management, and protection and security.
The document introduces different types of operating systems including mainframe systems, desktop systems, multiprocessor systems, distributed systems, clustered systems, real-time systems, and handheld systems. It defines the core components of an operating system including the hardware, OS, application programs, and users. It also provides definitions for key OS concepts such as the resource allocator and kernel.
The document discusses various topics related to operating systems including:
- An operating system manages computer hardware and acts as an intermediary between users and the computer. It allocates resources and controls programs to prevent errors.
- The kernel is the core of the operating system that runs at all times. Batch systems allow jobs to run without user interaction. Multiprogramming and time-sharing increase CPU utilization by switching between multiple programs.
- Multiprocessor systems have multiple CPUs to improve performance. Process management, memory management, and protection systems are core components of most operating systems.
This document provides an overview of an operating systems concepts textbook. It introduces key topics covered in the book like computer system organization, operating system structure and functions, process management, memory management, storage management, and security. The objectives are to provide a tour of major OS components and coverage of basic computer system organization. It describes the four main components of a computer system and how the operating system acts as an intermediary between the user, hardware, and application programs.
This document provides an overview of the key topics covered in an introductory operating systems course, including computer system organization, operating system structure and operations, process management, memory management, storage management, protection and security, kernel data structures, and different computing environments. The objectives of the course are to describe basic computer system organization, provide a tour of major operating system components, and explore open-source operating systems and different types of computing environments like mobile, distributed, client-server, and peer-to-peer.
This document provides information about various computer hardware components and concepts. It defines RAM as temporary memory that is erased when a computer is turned off, while ROM is permanent memory. It also describes power supplies, interrupts, plug and play devices, the BIOS, and the boot process. Expansion buses like ISA, EISA, VESA, PCI and interfaces like SCSI, IDE, and ATA are explained. Common hardware issues like beep codes and memory types are also covered.
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 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.
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.
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.
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.
Unit I
Computer System Overview-Basic Elements, Instruction Execution, Interrupts, Memory Hierarchy, Cache Memory, Direct Memory Access, Multiprocessor and Multicore Organization. Operating system overview-objectives and functions, Evolution of Operating System.- Computer System OrganizationOperating System Structure and Operations- System Calls, System Programs, OS Generation and System Boot.
Definition of Computer
Classification of Computer
Applications of Computer
Block Diagram and Working of Computer System
Different Peripheral Devices
Main Storage and Auxiliary Storage Devices
Computer Hardware and Software
This document discusses multiprogramming and time sharing in operating systems. It defines multiprogramming as allowing multiple programs to execute concurrently by assigning pending work to idle processors and I/O devices. Time sharing extends multiprogramming by rapidly switching between programs so that each program executes for a fixed time quantum, giving users the impression that the entire system is dedicated to their use. The key aspects covered are the concepts of processes, CPU scheduling, and how multiprogramming and time sharing improve resource utilization.
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.
This document provides an overview of operating system concepts, including:
- The role of an operating system is to act as an intermediary between the user and computer hardware to execute programs and efficiently manage system resources.
- A computer system consists of hardware, operating system, application programs, and users. The operating system controls and coordinates the hardware resources among applications and users.
- Operating systems perform process management, memory management, storage management, and security functions to allocate resources and control concurrent execution of programs.
The document provides an overview of operating systems and some of their key concepts. It discusses why operating systems are needed, defining them as programs that act as intermediaries between users and computer hardware. It describes the four main components of a computer system - hardware, operating system, application programs, and users. Finally, it outlines some of the main functions and goals of operating systems, such as executing user programs efficiently and making the computer system convenient to use.
The document discusses the structure and components of an operating system. It covers computer hardware structure including the CPU, storage, and I/O devices. It then discusses system calls which allow user programs to request services from the operating system. Finally, it outlines some key components of operating systems including process management, memory management, file management, I/O management and more.
The document discusses operating system interview questions and answers. It covers topics such as the definition of an operating system, basic functions of an OS, types of operating systems, kernel functions, process states, virtual memory, deadlocks, threads, synchronization, scheduling algorithms, and memory management. Some key points covered are that an OS acts as an intermediary between the user and hardware, the kernel provides basic services, processes can be in states like running, waiting, or ready, and virtual memory uses timesharing to simulate more memory than physically available.
This document provides an introduction to operating systems. It defines an operating system as a program that acts as an intermediary between the user and computer hardware. The key components of a computer system are described as hardware, operating system, application programs, and users. Operating systems manage resources, control programs, and provide common services like memory management, process management, and I/O management. Various computing environments are explored, including traditional systems, mobile systems, distributed systems, client-server models, and virtualization.
This document provides an overview of operating system concepts from the 8th edition of the textbook "Operating System Concepts Essentials" by Silberschatz, Galvin and Gagne. It defines an operating system as a program that acts as an interface between the user and computer hardware. A computer system is divided into four components - hardware, operating system, application programs, and users. The operating system performs two main roles - as an extended machine that hides hardware complexity and as a resource manager that controls shared access to devices, memory and processors. It also provides various services to users and applications like program execution, I/O, file management, and communication between processes.
This document provides an overview of operating system concepts from the textbook "Operating System Concepts with Java – 8th Edition". It discusses the definition and goals of an operating system, how it acts as an intermediary between the user and computer hardware. It also describes computer system organization including CPUs, memory, I/O devices, and how interrupts work. Finally, it covers operating system structure including multiprogramming and timesharing to enable efficient usage of system resources and interactive computing.
The document discusses different types of operating systems and computing environments. It describes mainframe systems which used batch processing and multiprogramming to improve CPU utilization. Time-sharing systems allowed interactive use through rapid switching between processes. Multiprocessor and distributed systems leverage multiple CPUs for increased throughput and reliability. Real-time systems must meet well-defined time constraints. Modern operating system concepts have migrated across computing environments from traditional to web-based and embedded systems.
He was a very compassionate and was very courageous. He always remained ready to work for the cause of humanity. His family was spiritually inclined and he had inherited this inclination .This spiritual environment throw a deep impact on his upbringing. From the very beginning he was a man of ethics and values.
This document provides an overview of operating system concepts by summarizing the major components and functions of an operating system. It discusses how operating systems manage resources like the CPU, memory, storage and I/O devices. It also covers key operating system services like process management, memory management, file systems, protection and security. Finally, it describes different computing environments that operating systems support like traditional systems, client-server, peer-to-peer and web-based computing.
This document provides an overview of operating system concepts by summarizing the major components and functions of an operating system. It discusses how operating systems manage resources like the CPU, memory, storage and I/O devices. It also covers key operating system services like process management, memory management, file systems, protection and security. Finally, it describes different computing environments that operating systems support like traditional systems, client-server, peer-to-peer and web-based computing.
The document discusses different types of operating systems and computing environments. It covers mainframe systems, desktop systems, multiprocessor systems, distributed systems, clustered systems, real-time systems, handheld systems, and web-based and embedded computing. The key aspects of each system type are defined, including their hardware configurations, goals, and features required of their operating systems.
The document provides an overview of operating system concepts from Chapter 1 of the textbook "Operating System Concepts" by Silberschatz, Galvin and Gagne. It defines what an operating system is, describes the basic components and goals of a computer system, and types of operating systems. It also discusses the functions of an operating system including managing resources and controlling programs. The document outlines the hierarchy of storage devices, interrupt handling, I/O structure, and different computer system architectures including single processor, multi-processor, and clustered systems.
The document summarizes key concepts related to processes in operating systems, including:
1) A process includes a program counter, stack, data section, heap, text, and address space.
2) Processes transition between states like running, ready, waiting, and terminated.
3) A process control block contains information for each process like state, scheduling info, and I/O status.
4) Schedulers select which process runs on the CPU and move processes between queues like ready and device queues.
This document provides an overview of operating system concepts from the 9th edition of the textbook "Operating System Concepts" by Silberschatz, Galvin and Gagne. It discusses the basic functions and organization of operating systems, including managing processes, memory, storage and security. It also covers computer system structure with hardware, OS, applications and users, and different types of computer architectures like single-processor, multi-processor and clustered systems. The document aims to describe the basic organization of computers and provide a high-level tour of operating system components and operations.
This document provides an overview of operating system concepts from the 9th edition of the textbook "Operating System Concepts" by Silberschatz, Galvin and Gagne. It begins with an introduction to operating systems and what they do. It then discusses computer system organization and architecture, including multiprocessor and clustered systems. It provides details on operating system structure for multiprogramming and timesharing systems. It also covers operating system operations, process management, memory management, storage management, and other core OS concepts. The document aims to give the reader a "grand tour" of major operating system components and concepts.
This document provides an overview of operating system concepts from the 9th edition of the textbook "Operating System Concepts" by Silberschatz, Galvin and Gagne. It describes the basic components and organization of computer systems, including hardware, operating systems, application programs, and users. It also summarizes the major functions of operating systems such as memory management, processor management, device management, file management, and network management. The document outlines concepts like interrupts, I/O structure, storage devices, caching, and the storage hierarchy to provide a high-level tour of operating system operations and components.
chapter 1 of Operating system by gagne.ppt51b48265a74f87
The document outlines the structure and key concepts of an operating systems course. It will cover 3 credit hours and include topics like computer system organization, operating system operations, process management, and open source operating systems. The course will use the 9th edition textbook "Operating System Concepts" by Silberschatz, Galvin, and Gagne as a reference. It provides an overview of operating system functions from both the user and system perspective and describes common computer hardware components and how they interact through an operating system.
This document provides an overview of an operating systems concepts textbook. It introduces key topics that will be covered, such as operating system structure, processes, memory management, storage management, and protection/security. It describes the typical components of a computer system including hardware, operating system, application programs, and users. It also discusses the role of an operating system in allocating resources and controlling programs to prevent errors.
The document provides an overview of operating system concepts, including:
- The role of an operating system in managing computer hardware resources and facilitating the use of applications.
- Key operating system functions like process management, memory management, storage management, I/O management, protection and security.
- Computer system organization involving CPUs, memory, I/O devices, and the bus connecting them.
- Operating system structures for multiprogramming and timesharing to enable efficient sharing of resources among users and processes.
- Computing environments involving traditional systems, office/home networks, and client-server models.
The document provides an overview of operating system concepts, including:
- The role of an operating system in managing computer hardware resources and facilitating the use of applications.
- Key operating system functions like process management, memory management, storage management, I/O management, and security/protection.
- Computer system organization involving CPUs, memory, I/O devices, and the bus connecting them.
- Operating system structures for multiprogramming/timesharing and memory management in these environments.
- The hierarchy of storage devices from fastest/smallest memory to slower/larger secondary storage.
- Computing environments involving traditional systems, networks, and client-server models.
What Operating Systems Do
Computer-System Organization
Computer-System Architecture
Operating-System Structure
Operating-System Operations
Process Management
Memory Management
Storage Management
Protection and Security
Kernel Data Structures
Computing Environments
Open-Source Operating Systems
Objectives: To describe the basic organization of computer systems
To provide a grand tour of the major components of operating systems
To give an overview of the many types of computing environments
To explore several open-source operating systems
The document provides an overview of operating system concepts, including:
- The four main components of a computer system: hardware, operating system, applications, and users.
- What operating systems do, such as managing resources and controlling programs.
- Computer system organization involving CPUs, memory, I/O devices, and interrupts.
- Operating system structures like processes, memory management, and storage management.
The document provides an overview of operating system concepts from the 9th edition of the textbook "Operating System Concepts" by Silberschatz, Galvin and Gagne. It describes the basic components of a computer system including hardware, operating system, application programs, and users. It also summarizes key operating system concepts such as process management, memory management, storage management, protection and security. Finally, it discusses computer system organization, storage structure, interrupt handling, and input/output structures.
A wiki (/ˈwɪki/ (listen) WIK-ee) is an online hypertext publication collaboratively edited and managed by its own audience, using a web browser. A typical wiki contains multiple pages for the subjects or scope of the project, and could be either open to the public or limited to use within an organization for maintaining its internal knowledge base.
Wikis are enabled by wiki software, otherwise known as wiki engines. A wiki engine, being a form of a content management system, differs from other web-based systems such as blog software, in that the content is created without any defined owner or leader, and wikis have little inherent structure, allowing structure to emerge according to the needs of the users.[1] Wiki engines usually allow content to be written using a simplified markup language and sometimes edited with the help of a rich-text editor.[2] There are dozens of different wiki engines in use, both standalone and part of other software, such as bug tracking systems. Some wiki engines are open-source, whereas others are proprietary. Some permit control over different functions (levels of access); for example, editing rights may permit changing, adding, or removing material. Others may permit access without enforcing access control. Other rules may be imposed to organize content.
The online encyclopedia project, Wikipedia, is the most popular wiki-based website, and is one of the most widely viewed sites in the world, having been ranked in the top twenty since 2007.[3] Wikipedia is not a single wiki but rather a collection of hundreds of wikis, with each one pertaining to a specific language. In addition to Wikipedia, there are hundreds of thousands of other wikis in use, both public and private, including wikis functioning as knowledge management resources, note-taking tools, community websites, and intranets. The English-language Wikipedia has the largest collection of articles: as of February 2020, it has over 6 million articles. Ward Cunningham, the developer of the first wiki software, WikiWikiWeb, originally described wiki as "the simplest online database that could possibly work."[4] "Wiki" (pronounced [wiki][note 1]) is a Hawaiian word meaning "quick."[5][6][7]
Building Production Ready Search Pipelines with Spark and MilvusZilliz
Spark is the widely used ETL tool for processing, indexing and ingesting data to serving stack for search. Milvus is the production-ready open-source vector database. In this talk we will show how to use Spark to process unstructured data to extract vector representations, and push the vectors to Milvus vector database for search serving.
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
UiPath Test Automation using UiPath Test Suite series, part 6DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 6. In this session, we will cover Test Automation with generative AI and Open AI.
UiPath Test Automation with generative AI and Open AI webinar offers an in-depth exploration of leveraging cutting-edge technologies for test automation within the UiPath platform. Attendees will delve into the integration of generative AI, a test automation solution, with Open AI advanced natural language processing capabilities.
Throughout the session, participants will discover how this synergy empowers testers to automate repetitive tasks, enhance testing accuracy, and expedite the software testing life cycle. Topics covered include the seamless integration process, practical use cases, and the benefits of harnessing AI-driven automation for UiPath testing initiatives. By attending this webinar, testers, and automation professionals can gain valuable insights into harnessing the power of AI to optimize their test automation workflows within the UiPath ecosystem, ultimately driving efficiency and quality in software development processes.
What will you get from this session?
1. Insights into integrating generative AI.
2. Understanding how this integration enhances test automation within the UiPath platform
3. Practical demonstrations
4. Exploration of real-world use cases illustrating the benefits of AI-driven test automation for UiPath
Topics covered:
What is generative AI
Test Automation with generative AI and Open AI.
UiPath integration with generative AI
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
HCL Notes and Domino License Cost Reduction in the World of DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-and-domino-license-cost-reduction-in-the-world-of-dlau/
The introduction of DLAU and the CCB & CCX licensing model caused quite a stir in the HCL community. As a Notes and Domino customer, you may have faced challenges with unexpected user counts and license costs. You probably have questions on how this new licensing approach works and how to benefit from it. Most importantly, you likely have budget constraints and want to save money where possible. Don’t worry, we can help with all of this!
We’ll show you how to fix common misconfigurations that cause higher-than-expected user counts, and how to identify accounts which you can deactivate to save money. There are also frequent patterns that can cause unnecessary cost, like using a person document instead of a mail-in for shared mailboxes. We’ll provide examples and solutions for those as well. And naturally we’ll explain the new licensing model.
Join HCL Ambassador Marc Thomas in this webinar with a special guest appearance from Franz Walder. It will give you the tools and know-how to stay on top of what is going on with Domino licensing. You will be able lower your cost through an optimized configuration and keep it low going forward.
These topics will be covered
- Reducing license cost by finding and fixing misconfigurations and superfluous accounts
- How do CCB and CCX licenses really work?
- Understanding the DLAU tool and how to best utilize it
- Tips for common problem areas, like team mailboxes, functional/test users, etc
- Practical examples and best practices to implement right away
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slackshyamraj55
Discover the seamless integration of RPA (Robotic Process Automation), COMPOSER, and APM with AWS IDP enhanced with Slack notifications. Explore how these technologies converge to streamline workflows, optimize performance, and ensure secure access, all while leveraging the power of AWS IDP and real-time communication via Slack notifications.
In the rapidly evolving landscape of technologies, XML continues to play a vital role in structuring, storing, and transporting data across diverse systems. The recent advancements in artificial intelligence (AI) present new methodologies for enhancing XML development workflows, introducing efficiency, automation, and intelligent capabilities. This presentation will outline the scope and perspective of utilizing AI in XML development. The potential benefits and the possible pitfalls will be highlighted, providing a balanced view of the subject.
We will explore the capabilities of AI in understanding XML markup languages and autonomously creating structured XML content. Additionally, we will examine the capacity of AI to enrich plain text with appropriate XML markup. Practical examples and methodological guidelines will be provided to elucidate how AI can be effectively prompted to interpret and generate accurate XML markup.
Further emphasis will be placed on the role of AI in developing XSLT, or schemas such as XSD and Schematron. We will address the techniques and strategies adopted to create prompts for generating code, explaining code, or refactoring the code, and the results achieved.
The discussion will extend to how AI can be used to transform XML content. In particular, the focus will be on the use of AI XPath extension functions in XSLT, Schematron, Schematron Quick Fixes, or for XML content refactoring.
The presentation aims to deliver a comprehensive overview of AI usage in XML development, providing attendees with the necessary knowledge to make informed decisions. Whether you’re at the early stages of adopting AI or considering integrating it in advanced XML development, this presentation will cover all levels of expertise.
By highlighting the potential advantages and challenges of integrating AI with XML development tools and languages, the presentation seeks to inspire thoughtful conversation around the future of XML development. We’ll not only delve into the technical aspects of AI-powered XML development but also discuss practical implications and possible future directions.
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
CAKE: Sharing Slices of Confidential Data on BlockchainClaudio Di Ciccio
Presented at the CAiSE 2024 Forum, Intelligent Information Systems, June 6th, Limassol, Cyprus.
Synopsis: Cooperative information systems typically involve various entities in a collaborative process within a distributed environment. Blockchain technology offers a mechanism for automating such processes, even when only partial trust exists among participants. The data stored on the blockchain is replicated across all nodes in the network, ensuring accessibility to all participants. While this aspect facilitates traceability, integrity, and persistence, it poses challenges for adopting public blockchains in enterprise settings due to confidentiality issues. In this paper, we present a software tool named Control Access via Key Encryption (CAKE), designed to ensure data confidentiality in scenarios involving public blockchains. After outlining its core components and functionalities, we showcase the application of CAKE in the context of a real-world cyber-security project within the logistics domain.
Paper: https://doi.org/10.1007/978-3-031-61000-4_16
AI-Powered Food Delivery Transforming App Development in Saudi Arabia.pdfTechgropse Pvt.Ltd.
In this blog post, we'll delve into the intersection of AI and app development in Saudi Arabia, focusing on the food delivery sector. We'll explore how AI is revolutionizing the way Saudi consumers order food, how restaurants manage their operations, and how delivery partners navigate the bustling streets of cities like Riyadh, Jeddah, and Dammam. Through real-world case studies, we'll showcase how leading Saudi food delivery apps are leveraging AI to redefine convenience, personalization, and efficiency.
Have you ever been confused by the myriad of choices offered by AWS for hosting a website or an API?
Lambda, Elastic Beanstalk, Lightsail, Amplify, S3 (and more!) can each host websites + APIs. But which one should we choose?
Which one is cheapest? Which one is fastest? Which one will scale to meet our needs?
Join me in this session as we dive into each AWS hosting service to determine which one is best for your scenario and explain why!
Things to Consider When Choosing a Website Developer for your Website | FODUUFODUU
Choosing the right website developer is crucial for your business. This article covers essential factors to consider, including experience, portfolio, technical skills, communication, pricing, reputation & reviews, cost and budget considerations and post-launch support. Make an informed decision to ensure your website meets your business goals.
“An Outlook of the Ongoing and Future Relationship between Blockchain Technologies and Process-aware Information Systems.” Invited talk at the joint workshop on Blockchain for Information Systems (BC4IS) and Blockchain for Trusted Data Sharing (B4TDS), co-located with with the 36th International Conference on Advanced Information Systems Engineering (CAiSE), 3 June 2024, Limassol, Cyprus.
Infrastructure Challenges in Scaling RAG with Custom AI modelsZilliz
Building Retrieval-Augmented Generation (RAG) systems with open-source and custom AI models is a complex task. This talk explores the challenges in productionizing RAG systems, including retrieval performance, response synthesis, and evaluation. We’ll discuss how to leverage open-source models like text embeddings, language models, and custom fine-tuned models to enhance RAG performance. Additionally, we’ll cover how BentoML can help orchestrate and scale these AI components efficiently, ensuring seamless deployment and management of RAG systems in the cloud.
Driving Business Innovation: Latest Generative AI Advancements & Success StorySafe Software
Are you ready to revolutionize how you handle data? Join us for a webinar where we’ll bring you up to speed with the latest advancements in Generative AI technology and discover how leveraging FME with tools from giants like Google Gemini, Amazon, and Microsoft OpenAI can supercharge your workflow efficiency.
During the hour, we’ll take you through:
Guest Speaker Segment with Hannah Barrington: Dive into the world of dynamic real estate marketing with Hannah, the Marketing Manager at Workspace Group. Hear firsthand how their team generates engaging descriptions for thousands of office units by integrating diverse data sources—from PDF floorplans to web pages—using FME transformers, like OpenAIVisionConnector and AnthropicVisionConnector. This use case will show you how GenAI can streamline content creation for marketing across the board.
Ollama Use Case: Learn how Scenario Specialist Dmitri Bagh has utilized Ollama within FME to input data, create custom models, and enhance security protocols. This segment will include demos to illustrate the full capabilities of FME in AI-driven processes.
Custom AI Models: Discover how to leverage FME to build personalized AI models using your data. Whether it’s populating a model with local data for added security or integrating public AI tools, find out how FME facilitates a versatile and secure approach to AI.
We’ll wrap up with a live Q&A session where you can engage with our experts on your specific use cases, and learn more about optimizing your data workflows with AI.
This webinar is ideal for professionals seeking to harness the power of AI within their data management systems while ensuring high levels of customization and security. Whether you're a novice or an expert, gain actionable insights and strategies to elevate your data processes. Join us to see how FME and AI can revolutionize how you work with data!
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc
How does your privacy program stack up against your peers? What challenges are privacy teams tackling and prioritizing in 2024?
In the fifth annual Global Privacy Benchmarks Survey, we asked over 1,800 global privacy professionals and business executives to share their perspectives on the current state of privacy inside and outside of their organizations. This year’s report focused on emerging areas of importance for privacy and compliance professionals, including considerations and implications of Artificial Intelligence (AI) technologies, building brand trust, and different approaches for achieving higher privacy competence scores.
See how organizational priorities and strategic approaches to data security and privacy are evolving around the globe.
This webinar will review:
- The top 10 privacy insights from the fifth annual Global Privacy Benchmarks Survey
- The top challenges for privacy leaders, practitioners, and organizations in 2024
- Key themes to consider in developing and maintaining your privacy program
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
2. Chapter 1: Introduction
s What Operating Systems Do
s Computer-System Organization
s Computer-System Architecture
s Operating-System Structure
s Operating-System Operations
s Process Management
s Memory Management
s Storage Management
s Protection and Security
s Distributed Systems
s Special-Purpose Systems
s Computing Environments
Operating System Concepts – 7 th Edition 1.2 Silberschatz, Galvin and Gagne
3. What is an Operating System?
s A program that acts as an intermediary between a user of a
computer and the computer hardware.
s Operating system goals:
q Execute user programs and make solving user problems
easier.
q Make the computer system convenient to use.
s Use the computer hardware in an efficient manner.
Operating System Concepts – 7 th Edition 1.3 Silberschatz, Galvin and Gagne
4. Computer System Structure
s Computer system can be divided into four components
q Hardware – provides basic computing resources
CPU, memory, I/O devices
q Operating system
Controls and coordinates use of hardware among various
applications and users
q Application programs – define the ways in which the system
resources are used to solve the computing problems of the
users
Word processors, compilers, web browsers, database
systems, video games
q Users
People, machines, other computers
Operating System Concepts – 7 th Edition 1.4 Silberschatz, Galvin and Gagne
5. Four Components of a Computer System
Operating System Concepts – 7 th Edition 1.5 Silberschatz, Galvin and Gagne
6. Operating System Definition
s OS is a resource allocator
q Manages all resources
q Decides between conflicting requests for efficient and fair
resource use
s OS is a control program
q Controls execution of programs to prevent errors and improper
use of the computer
Operating System Concepts – 7 th Edition 1.6 Silberschatz, Galvin and Gagne
7. Operating System Definition (Cont.)
s No universally accepted definition
s “Everything a vendor ships when you order an operating system”
is good approximation
q But varies wildly
s “The one program running at all times on the computer” is the
kernel. Everything else is either a system program (ships with
the operating system) or an application program
Operating System Concepts – 7 th Edition 1.7 Silberschatz, Galvin and Gagne
8. Computer Startup
s bootstrap program is loaded at power-up or reboot
q Typically stored in ROM or EPROM, generally known as
firmware
q Initializes all aspects of system
q Loads operating system kernel and starts execution
Operating System Concepts – 7 th Edition 1.8 Silberschatz, Galvin and Gagne
9. Computer System Organization
s Computer-system operation
q One or more CPUs, device controllers connect through
common bus providing access to shared memory
q Concurrent execution of CPUs and devices competing for
memory cycles
Operating System Concepts – 7 th Edition 1.9 Silberschatz, Galvin and Gagne
10. Computer-System Operation
s I/O devices and the CPU can execute concurrently.
s Each device controller is in charge of a particular device type.
s Each device controller has a local buffer.
s CPU moves data from/to main memory to/from local buffers
s I/O is from the device to local buffer of controller.
s Device controller informs CPU that it has finished its operation by
causing an interrupt.
Operating System Concepts – 7 th Edition 1.10 Silberschatz, Galvin and Gagne
11. Interrupts
An event external to the currently executing process that
causes a change in the normal flow of instruction
execution; usually generated by hardware devices
external to the CPU
Operating System Concepts – 7 th Edition 1.11 Silberschatz, Galvin and Gagne
12. Why Interrupts ?
People like connecting devices
• A computer is much more than the CPU
• Keyboard, mouse, screen, disk drives, Scanner, printer, sound
card, camera, etc.
These devices occasionally need CPU service
• But we can’t predict when
• • we want to keep the CPU busy between events
Need a way for CPU to find out devices need attention
Operating System Concepts – 7 th Edition 1.12 Silberschatz, Galvin and Gagne
13. Common Functions of Interrupts
s Interrupt transfers control to the interrupt service routine generally,
through the interrupt vector, which contains the addresses of all the
service routines.
s Interrupt architecture must save the address of the interrupted
instruction.
s Incoming interrupts are disabled while another interrupt is being
processed to prevent a lost interrupt.
s A trap is a software-generated interrupt caused either by an error or
a user request.
s An operating system is interrupt driven.
Operating System Concepts – 7 th Edition 1.13 Silberschatz, Galvin and Gagne
14. Interrupt Handling
s The operating system preserves the state of the CPU
by storing registers and the program counter.
s Determines which type of interrupt has occurred:
q Polling
q Vectored interrupt system
s Separate segments of code determine what action
should be taken for each type of interrupt
Operating System Concepts – 7 th Edition 1.14 Silberschatz, Galvin and Gagne
15. Interrupt Handling
“Polling is like picking up your phone every few
seconds to see if you have a call. Interrupts are
like waiting for the phone to ring.”
• Interrupts win if processor has other work to do
and event response time is not critical
• Polling can be better if processor has to respond
to an event ASAP
Operating System Concepts – 7 th Edition 1.15 Silberschatz, Galvin and Gagne
16. Interrupt Handling
Polling
s In polled devices, the only information the system has about
a device interrupt is either the bus interrupt priority level
(IPL) or the interrupt request number (IRQ)
s Interrupt handler poll or send a signal to each device in turn
in order to find out which one sent the interrupt request.
Operating System Concepts – 7 th Edition 1.16 Silberschatz, Galvin and Gagne
17. Interrupt Handling
Vectored interrupt system
q Devices that use vectored interrupts are assigned an
interrupt vector .
q This is a number that identifies a particular interrupt
handler.
q When the device interrupts, the system enters the
interrupt acknowledgement cycle, asking the interrupting
device to identify itself.
q The device responds with its interrupt vector. The kernel
then uses this vector to find the responsible interrupt
handler.
Operating System Concepts – 7 th Edition 1.17 Silberschatz, Galvin and Gagne
19. I/O Structure
s After I/O starts, control returns to user program only upon I/O
completion.
q Wait instruction idles the CPU until the next interrupt
q Wait loop (contention for memory access).
q At most one I/O request is outstanding at a time, no
simultaneous I/O processing.
s After I/O starts, control returns to user program without waiting
for I/O completion.
q System call – request to the operating system to allow user
to wait for I/O completion.
q Device-status table contains entry for each I/O device
indicating its type, address, and state.
q Operating system indexes into I/O device table to determine
device status and to modify table entry to include interrupt.
Operating System Concepts – 7 th Edition 1.19 Silberschatz, Galvin and Gagne
20. Two I/O Methods
Synchronous Asynchronous
Operating System Concepts – 7 th Edition 1.20 Silberschatz, Galvin and Gagne
22. Direct Memory Access Structure
s Stands for "Direct Memory Access." A feature of modern
computers and microprocessors that allows certain hardware
subsystems within the computer to access system memory for
reading and/or writing independently of the central processing
unit.
s DMA is a method of transferring data from the computer's RAM to
another part of the computer without processing it using the CPU.
While most data that is input or output from your computer is
processed by the CPU, some data does not require processing,
or can be processed by another device. In these situations, DMA
can save processing time and is a more efficient way to move
data from the computer's memory to other devices.
Operating System Concepts – 7 th Edition 1.22 Silberschatz, Galvin and Gagne
23. DMA: Example
Many hardware systems use DMA including disk
drive controllers, graphics cards, network cards
and sound cards.
s Sound card may need to access data stored in the
computer's RAM, but since it can process the data
itself, it may use DMA to bypass the CPU.
s Video cards that support DMA can also access
the system memory and process graphics without
needing the CPU.
Operating System Concepts – 7 th Edition 1.23 Silberschatz, Galvin and Gagne
24. Storage Structure
s Main memory – only large storage media that the CPU can access
directly.
s Secondary storage – extension of main memory that provides large
nonvolatile storage capacity.
s Magnetic disks – rigid metal or glass platters covered with magnetic
recording material
q Disk surface is logically divided into tracks, which are
subdivided into sectors.
q The disk controller determines the logical interaction between
the device and the computer.
Operating System Concepts – 7 th Edition 1.24 Silberschatz, Galvin and Gagne
25. Storage Hierarchy
s Storage systems organized in hierarchy.
q Speed
q Cost
q Volatility
s Caching – copying information into faster storage system; main
memory can be viewed as a last cache for secondary storage.
Operating System Concepts – 7 th Edition 1.25 Silberschatz, Galvin and Gagne
27. Caching
s Information in use copied from slower to faster storage temporarily
s Faster storage (cache) checked first to determine if information is
there
q If it is, information used directly from the cache (fast)
q If not, data copied to cache and used there
s Cache smaller than storage being cached
q Cache management important design problem
q Cache size and replacement policy
Operating System Concepts – 7 th Edition 1.27 Silberschatz, Galvin and Gagne
28. Performance of Various Levels of Storage
s Movement between levels of storage hierarchy can be explicit or
implicit
Operating System Concepts – 7 th Edition 1.28 Silberschatz, Galvin and Gagne
29. Migration of Integer A from Disk to
Register
s Multitasking environments must be careful to use most recent
value, no matter where it is stored in the storage hierarchy
s Multiprocessor environment must provide cache coherency in
hardware such that all CPUs have the most recent value in their
cache
s Distributed environment situation even more complex
q Several copies of a datum can exist
Operating System Concepts – 7 th Edition 1.29 Silberschatz, Galvin and Gagne
30. Operating System Structure
s Multiprogramming needed for efficiency
q Single user cannot keep CPU and I/O devices busy at all times
q Multiprogramming organizes jobs (code and data) so CPU always has
one to execute
q A subset of total jobs in system is kept in memory
q One job selected and run via job scheduling
q When it has to wait (for I/O for example), OS switches to another job
s Timesharing (multitasking) is logical extension in which CPU switches
jobs so frequently that users can interact with each job while it is running,
creating interactive computing
q Response time should be < 1 second
q Each user has at least one program executing in memory process
q If several jobs ready to run at the same time CPU scheduling
q If processes don’t fit in memory, swapping moves them in and out to
run
q Virtual memory allows execution of processes not completely in
memory
Operating System Concepts – 7 th Edition 1.30 Silberschatz, Galvin and Gagne
31. Memory Layout for Multiprogrammed
System
Operating System Concepts – 7 th Edition 1.31 Silberschatz, Galvin and Gagne
32. Operating-System Operations
s Interrupt driven by hardware
s Software error or request creates exception or trap
q Division by zero, request for operating system service
s Other process problems include infinite loop, processes modifying
each other or the operating system
s Dual-mode operation allows OS to protect itself and other system
components
q User mode and kernel mode
q Mode bit provided by hardware
Provides ability to distinguish when system is running user
code or kernel code
Some instructions designated as privileged, only
executable in kernel mode
System call changes mode to kernel, return from call resets
it to user
Operating System Concepts – 7 th Edition 1.32 Silberschatz, Galvin and Gagne
33. Transition from User to Kernel Mode
s Timer to prevent infinite loop / process hogging resources
q Set interrupt after specific period
q Operating system decrements counter
q When counter zero generate an interrupt
q Set up before scheduling process to regain control or terminate
program that exceeds allotted time
Operating System Concepts – 7 th Edition 1.33 Silberschatz, Galvin and Gagne
34. Process Management
s A process is a program in execution. It is a unit of work within the system.
Program is a passive entity, process is an active entity.
s Process needs resources to accomplish its task
q CPU, memory, I/O, files
q Initialization data
s Process termination requires reclaim of any reusable resources
s Single-threaded process has one program counter specifying location of
next instruction to execute
q Process executes instructions sequentially, one at a time, until
completion
s Multi-threaded process has one program counter per thread
s Typically system has many processes, some user, some operating system
running concurrently on one or more CPUs
q Concurrency by multiplexing the CPUs among the processes / threads
Operating System Concepts – 7 th Edition 1.34 Silberschatz, Galvin and Gagne
35. Process Management Activities
The operating system is responsible for the following activities in
connection with process management:
s Creating and deleting both user and system processes
s Suspending and resuming processes
s Providing mechanisms for process synchronization
s Providing mechanisms for process communication
s Providing mechanisms for deadlock handling
Operating System Concepts – 7 th Edition 1.35 Silberschatz, Galvin and Gagne
36. Memory Management
s All data in memory before and after processing
s All instructions in memory in order to execute
s Memory management determines what is in memory when
q Optimizing CPU utilization and computer response to users
s Memory management activities
q Keeping track of which parts of memory are currently being
used and by whom
q Deciding which processes (or parts thereof) and data to move
into and out of memory
q Allocating and deallocating memory space as needed
Operating System Concepts – 7 th Edition 1.36 Silberschatz, Galvin and Gagne
37. Storage Management
s OS provides uniform, logical view of information storage
q Abstracts physical properties to logical storage unit - file
q Each medium is controlled by device (i.e., disk drive, tape drive)
Varying properties include access speed, capacity, data-
transfer rate, access method (sequential or random)
s File-System management
q Files usually organized into directories
q Access control on most systems to determine who can access
what
q OS activities include
Creating and deleting files and directories
Primitives to manipulate files and dirs
Mapping files onto secondary storage
Backup files onto stable (non-volatile) storage media
Operating System Concepts – 7 th Edition 1.37 Silberschatz, Galvin and Gagne
38. Mass-Storage Management
s Usually disks used to store data that does not fit in main memory or data
that must be kept for a “long” period of time.
s Proper management is of central importance
s Entire speed of computer operation hinges on disk subsystem and its
algorithms
s OS activities
q Free-space management
q Storage allocation
q Disk scheduling
s Some storage need not be fast
q Tertiary storage includes optical storage, magnetic tape
q Still must be managed
q Varies between WORM (write-once, read-many-times) and RW (read-
write)
Operating System Concepts – 7 th Edition 1.38 Silberschatz, Galvin and Gagne
39. I/O Subsystem
s One purpose of OS is to hide peculiarities of hardware devices
from the user
s I/O subsystem responsible for
Memory management of I/O including
q buffering (storing data temporarily while it is being transferred),
q caching (storing parts of data in faster storage for performance)
q spooling (the overlapping of output of one job with input of
other jobs)
General device-driver interface
q Drivers for specific hardware devices
Operating System Concepts – 7 th Edition 1.39 Silberschatz, Galvin and Gagne
40. Protection and Security
s Protection – any mechanism for controlling access of processes
or users to resources defined by the OS
s Security – defense of the system against internal and external
attacks
q Huge range, including denial-of-service, worms, viruses,
identity theft
s Systems generally first distinguish among users, to determine who
can do what
q User identities (user IDs, security IDs) include name and
associated number, one per user
q User ID then associated with all files, processes of that user to
determine access control
q Group identifier (group ID) allows set of users to be defined
and controls managed, then also associated with each process,
file
q Privilege escalation allows user to change to effective ID
with more rights
Operating System Concepts – 7 th Edition 1.40 Silberschatz, Galvin and Gagne
41. Computing Environments
s Traditional computer
q Blurring over time
q Office environment
PCs connected to a network, terminals attached to
mainframe or minicomputers providing batch and
timesharing
Now portals allowing networked and remote systems
access to same resources
q Home networks
Used to be single system, then modems
Now firewalled, networked
Operating System Concepts – 7 th Edition 1.41 Silberschatz, Galvin and Gagne
42. Computing Environments (Cont.)
s Client-Server Computing
q Dumb terminals supplanted by smart PCs
q Many systems now servers, responding to requests generated by
clients
Compute-server provides an interface to client to request
services (i.e. database)
File-server provides interface for clients to store and retrieve
files
Operating System Concepts – 7 th Edition 1.42 Silberschatz, Galvin and Gagne
43. Peer-to-Peer Computing
s Another model of distributed system
s P2P does not distinguish clients and servers
q Instead all nodes are considered peers
q May each act as client, server or both
q Node must join P2P network
Registers its service with central lookup service on network,
or
Broadcast request for service and respond to requests for
service via discovery protocol
Operating System Concepts – 7 th Edition 1.43 Silberschatz, Galvin and Gagne
44. Web-Based Computing
s Web has become ubiquitous
s PCs most widespread devices
s More devices becoming networked to allow web access
s New category of devices to manage web traffic among similar
servers: load balancers
s Use of operating systems like Windows 95, client-side, have
evolved into Linux and Windows XP, which can be clients and
servers
Operating System Concepts – 7 th Edition 1.44 Silberschatz, Galvin and Gagne