SlideShare a Scribd company logo
1 of 87
ROBOT OPERATING SYSTEM
Department of Robotics & Automation
JSS Academy of Technical Education, Bangalore-560060
(Course Code: 21RA54)
Books
Text Books:
1. Silberschatz, Galvin, Gagne, Operating System concepts 6th edition, John Wiley, 2003.
2. Raj Kamal, Systems -Architecture, Programming and Design, Tata McGraw Hill, 2006.
3. P. Raghavan, Amol Lad, Sriram Neelakandan, Embedded Linux System Design and
Development, Auerbach Publications 2005.
4. Jonathan Corbet, Allesandro Rubini & Greg Kroah-Hartman, Linux Device Drivers
3rdedition, 2005.
Reference Books:
1. https://www.youtube.com/watch?v=PEzpOembKNc
2. https://www.youtube.com/watch?v=mCs21yByQqk
3. https://www.youtube.com/watch?v=hDn4hM148V8
Course Learning Objectives
• Understand the fundamental concepts of Operating Systems.
• Explain the mechanisms of Operating Systems to handle processes, threads
and their communication.
• Analyze the file structure and the protection and security mechanism.
• Explain the Memory management technique to improve the CPU utilisation and
its response speed.
Course outcomes (Course Skill Set)
CO1: Explain the basic concepts of operating systems and distributed systems.
CO2: Explain RTOS task scheduling, task synchronisation and task communication
mechanisms
CO3: Install Linux for specified configuration, develop Linux C programs and
implement Linux file system.
At the end of the course, students will be able to,
Continuous Internal Evaluation (CIE)
• Three IA Tests, each of 20 Marks
• Two assignments each of 10 Marks
• The sum of three tests, two assignments, will be out of 100 marks and will be scaled
down to 50 marks
The minimum passing mark for the CIE is 40% of the maximum marks (20 marks out of 50)
Semester End Examination(SEE)
• The question paper shall be set for 100 marks.
• The duration of SEE is 03 hours.
• The question paper will have 10 questions.
• 2 questions per module. Each question is set for 20 marks.
• The students have to answer 5 full questions, selecting one full question from each module.
• The student has to answer for 100 marks and marks scored out of 100 shall be
proportionally reduced to 50 marks.
• SEE minimum passing mark is 35% of the maximum marks (18 out of 50 marks).
• Students should secure a minimum of 40% (40 marks out of 100) in the sum total of the CIE and SEE
taken together.
ROS
MODULE 1: Introduction to Operating System
Basic Principles, Operating System Structures, System Calls and Types,
Processes: Concept Scheduling – Inter-Process Communication,
Introduction to Distributed Operating System, Types of Network-Based OS.
Content
Introduction
• An operating system (OS) is a Software that manages the Computer hardware.
• It provides the basis for application programs
• Act as an intermediary between the application and hardware.
• Before exploring the role of an OS in a modern computing environment, it is essential to
understand the organization and architecture of computer hardware, including the CPU,
memory, I/O devices, and storage.
• The role of an operating system is to allocate these resources to programs.
Introduction
What does Operating Systems Do
• A computer system can be divided roughly into four components: the hardware, the operating system, the
application programs, and the user.
1. Hardware: CPU, memory, and I/O devices provide basic
computing resources for the system.
2. Application programs: Solve computing problems of
users (word, Excel, Business programs etc.)
3. OS: Controls and coordinates the use of hardware
among application programs.
4. Users: People, other computers
Introduction
OS Roles
• Resource allocation among users & applications
• Isolation of different users and applications from each other
• Communication between users & applications
• The operating system is the one program running at all times on the computer—usually called the kernel.
• Along with the kernel, there are two other types of programs:
1. System programs: are associated with the OS but are not necessarily part of the kernel.
2. Application programs: include all programs not associated with the operation of the system.
Definition of OS
Kernel is a core component of an OS and serves as the main interface between the computer's physical hardware and the processes running on it.
Introduction
OS Roles
User View
• PC users: the system is designed for one user to control its resources.
• The goal is to maximize the work (or play) that the user is performing.
• In such cases, the OS is designed for ease of use, with little attention paid to performance and none
towards resource utilization
• Such systems are optimized for the single-user experience rather than the requirements of multiple users.
• Terminal users: A user sits at a terminal connected to a mainframe or a minicomputer.
• Other users are accessing the same computer through other terminals.
• These users share resources and may exchange information.
• The OS is designed to maximize resource utilization—CPU time, memory, and I/O are used efficiently.
Introduction
OS Roles
User View
• Workstations are connected to networks of other workstations and servers.
• These users have dedicated resources, but also share resources such as networking & servers—file,
compute, and print servers.
• The OS is designed to compromise between individual usability and resource utilization.
• Embedded computers: in-home devices and automobiles may have numeric keypads and may
turn indicator lights on or off to show status.
• Their OS is designed primarily to run without user intervention.
Introduction
OS Roles
System View
• An OS acts as a resource allocator
• A computer system has many resources required to solve a problem: CPU time, memory space, file-storage
space, I/O devices, etc.
• The OS acts as the manager of these resources.
• An operating system is a control program.
• A control program manages the execution of user programs to prevent errors and improper computer use.
• It is especially concerned with the operation and control of I/O devices.
A personal computer today
Introduction
• Super AMOLED display
• Capacitive touchscreen (multitouch)
• Audio (speaker, microphone)
• Vibration
• S pen
• 13 MP front camera
• 2 MP back camera
• Accelerometer
• Gyroscope
• Proximity sensor
• Compass
• Barometer
• Temperature sensor
• Humidity sensor
• Gesture sensor
• GPS
• 4G LTE
• NFC
• WiFi
• Bluetooth
• Infrared
• 64 GB internal storage
• Adreno 330 GPU
• Hexagon DSP
• Multimedia processor
Interaction
Sensing
Connectivity & Storage
Acceleration
Why should I study Operating Systems?
• Need to understand the interaction between the hardware and software
• Need to understand basic principles in the design of computer systems
• Efficient resource management, security, etc.
• It enables you to do things that are difficult/impossible otherwise.
Operating systems are everywhere
Computer-System Operation
• When the computer is powered up or rebooted, it needs an initial program to run.
• This initial program is called Bootstrap program
• Bootstrap program is stored ROM.
• It initializes all the hardware from CPU registers, device controllers & memory content.
• Bootstrap program knows how to load the OS and how to start executing that system.
• Bootstrap program will locate and load the OS kernel into memory.
• The OS executes the first process, such as “init,” and waits for some event to occur.
• An interrupt from either the hardware or the software signals the occurrence of an event.
• Hardware will trigger an interrupt at any time by sending a signal to the CPU
• Software will trigger an interrupt by executing a special operation called a system call
Kernel is a core component of an OS and serves as the main interface between the computer's physical hardware and the processes running on it.
What happens when we turn on computer?
Computer-System Operation
• The power supply sends electricity to the computer hardware,
such as the motherboard, hard drive, and fans.
• The BIOS (basic input/output system) initializes and performs a
power-on self-test (POST), which checks the basic hardware
components to ensure they are working properly. If any issues
are detected, error messages may be displayed.
• The OS, such as Windows or macOS, is loaded from the hard
drive into the computer’s RAM
• The OS then initializes its own components and drivers and
presents the login screen or desktop environment to the user.
What happens when we turn on computer?
Computer-System Operation
What happens when we turn on the computer?
Operating System Services
• An operating system provides an environment for the execution of programs.
• OS services provide functions that are helpful to the users.
A
view
of
operating
system
services
All operating systems have a user interface (UI).
The interface can take several forms:
a) Command-line interface (CLI)
b) Batch interface: Batch interfaces take a single command from the user
and process several tasks simultaneously without further user
interaction
c) Graphical user interface (GUI): the interface is a window system with
a pointing device to direct I/O, choose from menus, and make selections
and a keyboard to enter text.
• Some OS provides two or all three of these variations.
User interface
Operating-System Services
• The system must be able to load a program into memory and execute/run that program.
• The program must be able to end its execution, either normally or abnormally (indicating error).
Program Execution
• A running program may require I/O, which may involve a file or an I/O device.
• For specific devices, special functions may be desired (such as recording to a CD/or DVD drive)
• For efficiency and protection, users usually cannot control I/O devices directly.
• Hence, the operating system must provide a means to do I/O.
I/O operations
Operating-System Services
• Operating systems provide a variety of file systems
• Create, delete, search, and list file information.
• Permissions management to allow or deny access to files/directories based on file ownership
File-system manipulation
• The process needs to exchange information with another process.
• Communication may occur between processes executing on the same computer or between processes
executing on different computer systems tied together by a computer network.
• Communications may be implemented via shared memory / through message passing, in which packets of
information are moved between processes by the operating system.
Communications
Operating-System Services
• When there are multiple users / multiple jobs running at the same time, resources must be allocated to each
of them.
• The OS manages different types of resources.
• CPU cycles, main memory, and file storage have a special allocation code
• I/O devices may have much more general requests and release codes.
• Example: in determining how best to use the CPU, OS have CPU-scheduling routines that consider the
CPU’s speed, the jobs that must be executed, the number of registers available, etc.
• Routines to allocate printers, modems, USB storage drives, and other peripheral devices.
Resource Allocation
Operating-System Services
• The OS needs to be constantly aware of possible errors.
• Errors may occur in the;
a) CPU
b) Memory hardware (memory error or a power failure),
c) I/O devices (connection failure on a network or lack of paper in the printer),
d) User program (arithmetic overflow, CPU utilization)
• For each type of error, the OS should take the appropriate action to ensure correct and consistent
computing.
• Debugging facilities can significantly enhance the users’ and programmers’ abilities to use the system
efficiently.
Error Detection
Operating-System Services
• To keep track of which users use how much and what kinds of computer resources
• Record keeping: used for accounting.
• Usage statistics: a tool for researchers to reconfigure the system to improve computing services.
Accounting
Protection and security
• Protection involves ensuring all access to system resources is controlled.
• Security: involves the user to authenticate himself / herself to the system, using a password, to gain access
• Defending external I/O devices, modems and network adapters, from invalid access attempts and recording
all connections for detection of break-ins.
• If a system is to be protected and secure, precautions must be instituted throughout it.
Operating-System Services
Operating System Structure
An OS provides the environment / platform within which programs are executed.
While designing a new operating system, the goals of the system should be well-defined.
The goals form the basis for choices among various algorithms and strategies.
1. OS focuses on the services that the system provides.
2. Interface that it makes available to users and programmers;
3. Its components and their interconnections.
Operating System Structure
• Modern operating system must be engineered carefully if it is to function properly and be modified easily.
• A common approach is to partition the task into small components.
• Each of these modules should be a well-defined portion of the system, with carefully defined inputs,
outputs, and functions.
1. Simple Structure
2. Layered Approach
3. Microkernels
4. Modules
Operating-System Structure
• The important aspect of OS is the ability to multiprogram and multitask.
1. Multiprogramming
2. Multitasking (Time-sharing)
Operating-System Structure
• A single program cannot always keep the CPU or I/O devices busy.
• Multiprogramming increases CPU utilisation by organizing jobs (code and data),
so the CPU always has one job to execute.
• The OS simultaneously keeps several jobs in memory (Fig.)
• Since the main memory is too small to accommodate all jobs, the jobs are
kept on the disk in the job pool.
• The job pool consists of all processes residing on disk awaiting allocation of
main memory
Memory layout for a multiprogramming system
1. Multiprogramming
Operating-System Structure
• The operating system picks and executes one of the jobs in memory.
• The job may have to wait for some task, such as an I/O operation, to
complete.
• In a non-multiprogramming system, the CPU would sit idle.
• In a multiprogramming system, the OS switches to another job & executes it.
• When that job needs to wait, the CPU is switched to another job, and so on.
Eventually, the first job finishes waiting and gets the CPU back.
• As long as at least one job needs to execute, the CPU is never idle.
Example: While one case is waiting to go to trial or have papers typed, the lawyer can work on another case. If he has enough
clients, the lawyer will never be idle
1. Multiprogramming
Operating-System Structure
• Multiprogrammed systems provide an environment where the various system
resources (CPU, Memory, peripheral devices) are utilized effectively, but they
do not provide user interaction with the computer system.
1. Multiprogramming
Operating-System Structure
• Time sharing (or multitasking) is a logical extension of multiprogramming.
• In time-sharing systems, the CPU executes multiple jobs by switching among them.
• Switches occur so frequently that the users can interact with each program while it is running.
• Time sharing requires an interactive (or hands-on) computer system, which provides direct communication
between the user and the system.
• User gives instructions to the OS or a program directly, using an input device and waits for immediate results
on an output device.
• Accordingly, the response time should be short (Quick)—typically less than one second.
Time-sharing (Multitasking)
Operating-System Structure
• A time-shared OS allows many users to share the computer
simultaneously.
• Each command in a time-shared system tends to be short
(Quick);
• As the system switches rapidly from one user to the next, each
user is given the impression that the entire computer system is
dedicated to his use, though it is being shared among many
users.
Time-sharing (Multitasking)
Operating-System Structure
• A time-shared OS CPU scheduling and multiprogramming to provide each user with a time-shared computer.
• Each user has at least one separate program in memory.
• A program loaded into memory and executing is called a process.
• When a process executes for a short time before it either finishes or needs to perform I/O.
• I/O may be interactive; output goes to a display for the user, and input comes from a user’s keyboard, mouse,
or other device.
• The interactive I/O typically runs at “people speeds,” it may take a long time to complete.
Time-sharing
System Calls
• System calls provide/act as an interface between a process and an OS.
• System calls are available as routines written in C and C++
• There are 2 modes of execution for a program:
• 1) User mode
• Do not have access to resources like memory or hardware
• When a program crashes, the entire system will not break down
• 2) Kernel mode
• Privileged mode
• Have access to resources
• When a program crashes, the entire system breaks down
• As user mode is safer, most programs run in user mode.
• But some programs might need access to resources, so they will make a call to the OS to request these.
This call is a system call. When the OS receives the system call, it will change the mode of the program to
kernel mode. This is called mode switching.
System Calls
• Example of a system call sequence for writing a simple program to read data from one file and copy them to
another file
First sequence of System calls
Copying Process
System Calls
Types of System Calls
System calls can be grouped roughly into 5 major categories:
1. Process control
2. File manipulation
3. Device manipulation
4. Information Maintenance
5. Communications
System Calls
Types of System Calls
1. Process control: System calls that are used for controlling the process
◦ end, abort
◦ load, execute
◦ create process, terminate process
◦ get process attributes, set process attributes
◦ wait for time
◦ wait event, signal event
◦ allocate and free memory
• When a process runs, it has to run and terminate or hold
typically or abnormally.
• The process should come to a halt once it is completed;
otherwise, errors might occur.
• If the error occurs in the execution of the process, then that
process has to be halted or aborted abnormally
Examples of system calls
System Calls
Types of System Calls
2. File Management: System calls that are used for managing or manipulating the files
◦ create file, delete file
◦ open, close
◦ read, write, reposition
◦ get file attributes, set file attributes
Examples of system calls
System Calls
Types of System Calls
3. Device Management: System calls that are used for managing or manipulating devices (i/o, other devices)
◦ request device, release device
◦ read, write, reposition
◦ get device attributes, set device attributes
◦ logically attach or detach devices
Examples of system calls
• A process may need several resources to execute—main memory,
disk drives, and access to files.
• If the resources are available, they can be granted, and control can
be returned to the user process
System Calls
Types of System Calls
4. Information Maintenance: a system call used to maintain information.
• These system calls handle information and its transfer between the OS and the user program.
◦ get time or date, set time or date
◦ get system data, set system data
◦ get process, file, or device attributes
◦ set process, file, or device attributes
Examples of system calls
All the information about the system must be maintained and updated
Example: Date and time
System Calls
Types of System Calls
5. Communication: useful for interprocess communication, also deals with creating and deleting a
communication connection.
◦ create, delete communication connection
◦ send, and receive messages
◦ transfer status information
◦ attach or detach remote devices/computer from network
Examples of system calls
• These types of system calls are used for communication between different processes and devices.
When the process is executing it needs to communicate or access each other or other processes or needs to know the
state of other processes
To communicate between the two processes, we need to create a connection, after communication, we need to delete or
close the communication
System Calls
What is the Purpose of System Calls in OS?
• If a file system needs files to be created or deleted.
• A system call is also necessary for reading and writing from files.
• Development and administration of new procedures.
• System calls are also required for network connections. This also applies to
packet sending and receiving.
• A system call is necessary to access hardware such as a printer, scanner,
etc.
Process Management
Processes: Concept Scheduling – Inter-Process Communication
Process Management
• Early computer systems allowed only one program to be executed at a time.
• This program had complete control of the system and had access to all the system’s resources.
• Current-day computer systems allow multiple programs to be loaded into memory and executed
concurrently
• A process is the unit of work in a modern time-sharing system (Multitasking)
Process Management
• A process is a program in execution.
• A process need resources, such as CPU time, memory, files, & I/O devices, to accomplish its task.
• The resources are allocated to the process when it is created or while executing.
• Systems consist of a collection of processes:
• OS processes execute system code, and user processes execute user code.
• All processes may be executed concurrently.
• Traditionally, a process contained only a single thread of control.
• Modern operating systems now support processes that have multiple threads.
• The OS is responsible for the following activities;
• Creation & and deletion of both user and system processes
• Scheduling of processes;
• Mechanisms for synchronization, communication, & and handling for processes.
Process
Process Management
Process Concept
• A batch system executes a process (job), whereas a time-shared (multitasking) system has user programs
or tasks.
• Even on a single-user system such as MS Windows, a user may be able to run several programs at one
time: a word processor, a Web browser, and an e-mail package.
• Even if the user can execute only one program at a time, the operating system may need to support its
own internal programmed activities, such as memory management.
• All these activities are similar, we call all of them processes (jobs).
CPU Activities
Process Management
Process
Structure of Process in Memory
• A process is a program in execution.
• A process is more than the program code, known as a text section.
• Program includes the current activity, as represented by the program Counter (PC)
and the contents of the processor’s registers.
• Process stack: which contains temporary data (such as function parameters, return
addresses, and local variables)
• Data section: contains global variables.
• Heap: memory, dynamically allocated during process run time.
The structure of a process in memory is shown in Figure
Process Management
Process
Process in Memory
• A program by itself is not a process.
• Program is a passive entity, such as a file containing a list of instructions stored on
disk (often called an executable file),
• A process is an active entity, with a program counter specifying the next instruction to
execute
• A program becomes a process when an executable file is loaded into memory.
• Two techniques for loading executable files are
Double-clicking an icon and
Entering the name of the exe file in the command line
Process Management
Process
Process in Memory
• Two processes may be associated with the same program, they are nevertheless
considered two separate execution sequences.
• E.g., Users may be running different copies of the mail program, or may invoke many
copies of the Web browser program.
• Each of these is a separate process, and although the text sections are equivalent, the
data, heap, and stack sections vary.
Process Management
Process State
• As a process executes, it changes state.
• The state of a process is defined in part by the current activity of
that process.
• Each process may be in one of the following states:
• New: The process is being created.
• Running: Instructions are being executed.
• Waiting: Process is waiting for some event to occur (such as an
I/O completion)
• Ready: Process is waiting to be assigned to a processor.
• Terminated. Process has finished execution
Diagram of process state.
Process Management
Process Control Block
• Each process is represented in the OS by a process control block (PCB), also
called a task control block.
• PCB has many information associated with a specific process.
Process control block (PCB)
1. Process state: State may be new, ready, running, waiting, halted, and so on.
2. Process Number: Every process is assigned a unique id known as process ID
or PID which stores the process identifier.
3. Program counter: indicates the address of the next instruction to be executed
for this process
4. Registers: CPU registers which include the accumulator, base, registers, and
general-purpose registers.
Process Management
Process Control Block
Process control block
5. Memory-management information: information about the memory management system
used by the OS. This may include page tables, segment tables, etc.
6. Open files list: This information includes the list of files opened for a process.
7. Accounting information: Includes the amount of CPU used, and process numbers etc.
8. I/O status information: List of I/O devices used by the process.
Process Management
Threads
• Within a program, a Thread is a separate execution path.
• A thread is a single sequence stream within a process.
• OS creates and manages threads, and they share same memory and
resources as the program that created them. This enables multiple threads
to collaborate and work efficiently within a single program.
• Each thread belongs to exactly one process.
• Threads run in parallel improving the application performance
• Each such thread has its own CPU state and stack, but they share the
address space of the process and the environment.
MS Word uses multiple threads: one thread to format the text, another thread to process inputs, etc.
Process Management
Threads
• In an OS that supports multithreading, the process consist of many threads.
• But threads can be effective only if CPU is more than 1 otherwise two threads have to context switch for
that single CPU.
Process Scheduling
• Process scheduling is the activity of the process manager that handles the removal of the running
process from the CPU and the selection of another process based on a particular strategy.
• Process scheduling is an essential part of a Multiprogramming operating system.
• OS allow more than one process to be loaded into the memory at a time and the loaded process shares
the CPU using time multiplexing.
Process Scheduling
Process Scheduling
Types of Process Schedulers
There are three types of process schedulers
1. Long Term or Job Scheduler
2. Short-Term or CPU Scheduler
3. Medium-Term Scheduler
Process Scheduling
Types of Process Schedulers
1. Long Term or Job Scheduler
• It brings the new process to the ‘Ready State’.
• It controls the Degree of Multi-programming, i.e., no. of processes present in a ready state
• I/O-bound tasks use much of time in I/O operations while CPU-bound processes spend time on the CPU.
• Job scheduler increases efficiency by maintaining a balance between the two.
• Typically used in batch-processing systems.
Process Scheduling
Types of Process Schedulers
2. Short-Term or CPU Scheduler
• Short-term scheduler only selects the process to schedule it doesn’t load the process on running.
• Here is when all the scheduling algorithms are used.
Process Scheduling
Types of Process Schedulers
3. Medium-Term Scheduler
• It is responsible for suspending and resuming the process.
• It mainly does swapping (moving processes from main memory to disk and vice versa).
• Helps in maintaining a balance between the I/O bound and the CPU bound.
• It reduces the degree of multiprogramming.
Process Scheduling
Context Switching
• A context switching is the mechanism to store and restore the state or
context of a CPU in Process Control block so that a process execution can
be resumed from the same point at a later time.
• Context switcher enables multiple processes to share a single CPU.
• Context switching is an essential part of multitasking OS features.
• When the scheduler switches the CPU from executing one process to
another, the state of current running process is stored into the PCB.
• At that point, the second process can start executing.
Process Scheduling
Context Switching
• When the process is switched, the following information is stored for
later use.
• Program Counter
• Scheduling information
• Base and limit register value
• Currently used register
• Changed State
• I/O State information
• Accounting information
Process Scheduling
Interprocess Communication
• It is the mechanism provided by the OS, allows processes to communicate with each other.
• Communication involve a process letting another process know that some event has occurred or the
transferring of data from one process to another.
Process Scheduling
Interprocess Communication
Reasons for providing an environment that allows process cooperation
1. Computation speedup. If we want a particular task to run faster, we must break it into subtasks, each will
be executing in parallel with the others
2. Information sharing. users wants to share the information (shared file), we must provide an environment
to allow concurrent access to share information
3. Modularity. Users want to construct the system in a modular fashion, dividing the system functions into
separate process or threads
4. Convenience. users work on many tasks at the same time.
For instance, a user may be editing, printing, and compiling in parallel.
Process Scheduling
Interprocess Communication
There are two fundamental models of interprocess communication:
(1) Shared memory
(2) Message passing.
Process Scheduling
Interprocess Communication
• Shared Memory: type of memory, used or accessed by multiple processes simultaneously.
• Primarily used so that the processes can communicate with each other.
• Shared memory is used by almost all POSIX and Windows operating systems as well.
• Message Passing: Processes to synchronize and communicate with each other.
• By using the message passing, the processes can communicate with each other without restoring the
variables.
Message passing Shared memory
Process Scheduling
Interprocess Communication
Message passing
Shared memory
• Process A sends a message like “M” to the OS kernel.
• This message is then read by Process B.
• A communication link is required between the two processes for successful message
exchange.
• Process A wants to communicate with process B and needs to attach its address
space to this shared memory segment.
• Process A will write a message to the shared memory, and Process B will read that
message from the shared memory.
• Processes are responsible for ensuring synchronization so that both processes do not
write to the same location at the same time.
Introduction to Distributed Operating System
• A distributed system is a collection of processors (CPU) that do not share memory or a clock.
• Each processor has its own local memory.
• Processors communicate with one another through communication lines such as local-area or
wide-area networks.
Distributed Operating System
Small microprocessors, Workstations, Minicomputers,
and Large general-purpose computer systems.
• A distributed system is a collection of processors (CPU) that do not share memory or a clock.
• Each processor has its own local memory.
• Processors communicate with one another through communication lines such as local-area or
wide-area networks.
Distributed Operating System
Examples of Distributed Operating System
Distributed Operating System
A distributed system
There are four major reasons for building distributed systems:
1. Resource sharing
2. Computation speedup
3. Reliability
4. Communication
Distributed Operating System
A distributed system
1. Resource sharing
Distributed Operating System
If a number of different sites are connected to one
another, then a user at one site may be able to use the
resources available at another.
E.g.: User at site A may be using a laser printer located
at site B.
User at B may access a file that resides at A.
Distributed system provides mechanisms for sharing
files at remote sites, processing information in a
distributed database, printing files at remote sites, using
remote specialized hardware devices
A distributed system
2. Computation Speedup
Distributed Operating System
• If a particular site is currently overloaded with jobs,
some of them can be moved to other, lightly loaded
sites. This movement of jobs is called load sharing
Automated load sharing, in which the distributed
operating system automatically moves jobs, is not yet
common in commercial systems.
A distributed system
3. Reliability
Distributed Operating System
• If one site fails in a distributed system, the remaining
sites can continue operating, giving the system better
reliability.
• With enough redundancy (in both hardware and
data), the system can continue operation, even if
some of its sites have failed.
A distributed system
4. Communication
Distributed Operating System
• When several sites are connected to one another by
a communication network, users at the various sites
have the opportunity to exchange information.
A distributed system
Applications of Distributed OS
Distributed Operating System
• Internet Technology
• Distributed databases System
• Air Traffic Control System
• Airline reservation Control systems
• Peep-to-peer networks system
• Telecommunication networks
• Scientific Computing System
• Cluster Computing
• Grid Computing
• Data rendering
Examples of Distributed Operating Systems
Distributed Operating System
• IRIX operating system is a Silicon Graphics multiprocessor workstation version of UNIX System VR3
• DYNIX operating system is used on Sequent Symmetry multiprocessor computers.
• AIX is an operating system designed for IBM RS/6000 systems.
• Open Foundation Software created the OSF/1 operating system, which is UNIX compatible.
• Mach/OS is a UNIX-compatible multi-threading and multitasking operating system.
• Solaris is an operating system for SUN multiprocessor workstations.
Types of Network based operating systems
Distributed Operating System
• Network OS provides an environment in which users can access remote resources by either logging in to
the appropriate remote machine or transferring data from the remote machine to their own machines.
1. Peer-to-Peer Systems
2. Client-Server Systems
3. Middleware
4. N-tier Systems
Types of Network based operating systems
Distributed Operating System
• In a peer-to-peer (P2P) distributed operating system, each computer or
node is equal in terms of functionality and can act as a client or server.
• Nodes can share resources such as processing power, storage, and
bandwidth with each other.
• P2P systems are often used in file sharing, instant messaging, and
gaming applications.
• They are also known as “Loosely Coupled Systems”
Peer-to-Peer Systems
Types of Network based operating systems
Distributed Operating System
• In a client-server distributed operating system, the server
provides a specific set of services or resources to the client.
• The client makes requests to the server, and the server responds
by providing the requested service or resource.
• Client-server distributed operating systems are commonly used
in enterprise applications
Client-Server Systems
Types of Network based operating systems
Distributed Operating System
• Middleware is a software layer that lies between the OS and application software.
• It provides a set of services that enable communication between different applications running
on different machines.
• Middleware is used to create distributed systems that can run across multiple platforms.
Middleware
Types of Network based operating systems
Distributed Operating System
• N-tier, in simpler terms, means - any number of tiers with
no limit.
• N-tier systems allow you to make use of computer
hardware and software resources dynamically
• N-tier distributed operating systems essentially allow you to
make your own mix of hardware and software layers to
provide a modular collection of services. Think of it as
software logo.
N-tier Systems
END

More Related Content

Similar to Introduction to OS.pptx

os unit 1 (2).pptx. introduction to operating systems
os unit 1 (2).pptx. introduction to operating systemsos unit 1 (2).pptx. introduction to operating systems
os unit 1 (2).pptx. introduction to operating systemsssuser6aef00
 
1. Unit 1_Introduction to OS.pptx
1. Unit 1_Introduction to OS.pptx1. Unit 1_Introduction to OS.pptx
1. Unit 1_Introduction to OS.pptxAishwarya .
 
Nt introduction(os)
Nt introduction(os)Nt introduction(os)
Nt introduction(os)NehaTadam
 
OVERVIEW OF OPERATING SYSTEM -Basic concepts of operating system like functio...
OVERVIEW OF OPERATING SYSTEM -Basic concepts of operating system like functio...OVERVIEW OF OPERATING SYSTEM -Basic concepts of operating system like functio...
OVERVIEW OF OPERATING SYSTEM -Basic concepts of operating system like functio...ApurvaLaddha
 
Introduction to Operating System
Introduction to Operating SystemIntroduction to Operating System
Introduction to Operating SystemDivya S
 
Introduction to Operating Systems - Mary Margarat
Introduction to Operating Systems - Mary MargaratIntroduction to Operating Systems - Mary Margarat
Introduction to Operating Systems - Mary MargaratMary Margarat
 
CSE3120- Module1 part 1 v1.pptx
CSE3120- Module1 part 1 v1.pptxCSE3120- Module1 part 1 v1.pptx
CSE3120- Module1 part 1 v1.pptxakhilagajjala
 
Bedtime Stories on Operating Systems.pdf
Bedtime Stories on Operating Systems.pdfBedtime Stories on Operating Systems.pdf
Bedtime Stories on Operating Systems.pdfAyushBaiswar1
 
Kernel security Concepts
Kernel security ConceptsKernel security Concepts
Kernel security ConceptsMohit Saxena
 
Operating system
Operating systemOperating system
Operating systemSonika koul
 
Operation Java games apps systems presentation
Operation Java games apps systems presentationOperation Java games apps systems presentation
Operation Java games apps systems presentationnofove2839
 
CP 226 Mod 1 Lecture 1_2.pdf
CP 226 Mod 1 Lecture 1_2.pdfCP 226 Mod 1 Lecture 1_2.pdf
CP 226 Mod 1 Lecture 1_2.pdfDeodatusKalekona1
 
Lecture1423726024
Lecture1423726024Lecture1423726024
Lecture1423726024deepakjeetu
 

Similar to Introduction to OS.pptx (20)

os unit 1 (2).pptx. introduction to operating systems
os unit 1 (2).pptx. introduction to operating systemsos unit 1 (2).pptx. introduction to operating systems
os unit 1 (2).pptx. introduction to operating systems
 
1. Unit 1_Introduction to OS.pptx
1. Unit 1_Introduction to OS.pptx1. Unit 1_Introduction to OS.pptx
1. Unit 1_Introduction to OS.pptx
 
unit1 part1.ppt
unit1 part1.pptunit1 part1.ppt
unit1 part1.ppt
 
Nt introduction(os)
Nt introduction(os)Nt introduction(os)
Nt introduction(os)
 
OVERVIEW OF OPERATING SYSTEM -Basic concepts of operating system like functio...
OVERVIEW OF OPERATING SYSTEM -Basic concepts of operating system like functio...OVERVIEW OF OPERATING SYSTEM -Basic concepts of operating system like functio...
OVERVIEW OF OPERATING SYSTEM -Basic concepts of operating system like functio...
 
Introduction to Operating System
Introduction to Operating SystemIntroduction to Operating System
Introduction to Operating System
 
Introduction to Operating Systems - Mary Margarat
Introduction to Operating Systems - Mary MargaratIntroduction to Operating Systems - Mary Margarat
Introduction to Operating Systems - Mary Margarat
 
os_1.pdf
os_1.pdfos_1.pdf
os_1.pdf
 
os unit 1.pdf
os unit 1.pdfos unit 1.pdf
os unit 1.pdf
 
CSE3120- Module1 part 1 v1.pptx
CSE3120- Module1 part 1 v1.pptxCSE3120- Module1 part 1 v1.pptx
CSE3120- Module1 part 1 v1.pptx
 
Bedtime Stories on Operating Systems.pdf
Bedtime Stories on Operating Systems.pdfBedtime Stories on Operating Systems.pdf
Bedtime Stories on Operating Systems.pdf
 
Operating systems 101
Operating systems 101Operating systems 101
Operating systems 101
 
Operating Systems
Operating SystemsOperating Systems
Operating Systems
 
OS.pptx
OS.pptxOS.pptx
OS.pptx
 
Kernel security Concepts
Kernel security ConceptsKernel security Concepts
Kernel security Concepts
 
Operating system
Operating systemOperating system
Operating system
 
Week 01.pdf
Week 01.pdfWeek 01.pdf
Week 01.pdf
 
Operation Java games apps systems presentation
Operation Java games apps systems presentationOperation Java games apps systems presentation
Operation Java games apps systems presentation
 
CP 226 Mod 1 Lecture 1_2.pdf
CP 226 Mod 1 Lecture 1_2.pdfCP 226 Mod 1 Lecture 1_2.pdf
CP 226 Mod 1 Lecture 1_2.pdf
 
Lecture1423726024
Lecture1423726024Lecture1423726024
Lecture1423726024
 

More from taruian

Module 2_Localization And Tracking.pptx
Module 2_Localization And Tracking.pptxModule 2_Localization And Tracking.pptx
Module 2_Localization And Tracking.pptxtaruian
 
Introduction_Medical Robotics.pptx
Introduction_Medical Robotics.pptxIntroduction_Medical Robotics.pptx
Introduction_Medical Robotics.pptxtaruian
 
BSP.pptx
BSP.pptxBSP.pptx
BSP.pptxtaruian
 
OVERVIEW OF RTOS
OVERVIEW OF RTOSOVERVIEW OF RTOS
OVERVIEW OF RTOStaruian
 
Robotics Applications.pptx
Robotics Applications.pptxRobotics Applications.pptx
Robotics Applications.pptxtaruian
 
Robot Drives And End Effectors.pptx
Robot Drives And End Effectors.pptxRobot Drives And End Effectors.pptx
Robot Drives And End Effectors.pptxtaruian
 
Robot Anatomy And Motion Analysis.pptx
Robot Anatomy And Motion Analysis.pptxRobot Anatomy And Motion Analysis.pptx
Robot Anatomy And Motion Analysis.pptxtaruian
 
Governors.pptx
 Governors.pptx Governors.pptx
Governors.pptxtaruian
 
Avoiding Risk & Harmful Habits.pptx
Avoiding Risk & Harmful Habits.pptxAvoiding Risk & Harmful Habits.pptx
Avoiding Risk & Harmful Habits.pptxtaruian
 
Creating Healthy & Caring Relationships.pptx
Creating Healthy & Caring Relationships.pptxCreating Healthy & Caring Relationships.pptx
Creating Healthy & Caring Relationships.pptxtaruian
 
Building Healthy Life Style for Better Future.pptx
Building Healthy Life Style for Better Future.pptxBuilding Healthy Life Style for Better Future.pptx
Building Healthy Life Style for Better Future.pptxtaruian
 
Good Health & It’s balance for positive mindset.pptx
Good Health & It’s balance for positive mindset.pptxGood Health & It’s balance for positive mindset.pptx
Good Health & It’s balance for positive mindset.pptxtaruian
 
Joints.pptx
Joints.pptxJoints.pptx
Joints.pptxtaruian
 
Thread Forms.pptx
Thread Forms.pptxThread Forms.pptx
Thread Forms.pptxtaruian
 
Keys.pptx
Keys.pptxKeys.pptx
Keys.pptxtaruian
 
Associated IoT Technologies.pptx
Associated IoT Technologies.pptxAssociated IoT Technologies.pptx
Associated IoT Technologies.pptxtaruian
 
IoT Processing Topologies.pptx
IoT Processing Topologies.pptxIoT Processing Topologies.pptx
IoT Processing Topologies.pptxtaruian
 
Sensing & Actuation.pptx
Sensing & Actuation.pptxSensing & Actuation.pptx
Sensing & Actuation.pptxtaruian
 
Introduction to IoT (Basics of Networking & Emergence of IoT).pptx
Introduction to IoT (Basics of Networking & Emergence of IoT).pptxIntroduction to IoT (Basics of Networking & Emergence of IoT).pptx
Introduction to IoT (Basics of Networking & Emergence of IoT).pptxtaruian
 
Awarness on NAAC.pptx
Awarness on NAAC.pptxAwarness on NAAC.pptx
Awarness on NAAC.pptxtaruian
 

More from taruian (20)

Module 2_Localization And Tracking.pptx
Module 2_Localization And Tracking.pptxModule 2_Localization And Tracking.pptx
Module 2_Localization And Tracking.pptx
 
Introduction_Medical Robotics.pptx
Introduction_Medical Robotics.pptxIntroduction_Medical Robotics.pptx
Introduction_Medical Robotics.pptx
 
BSP.pptx
BSP.pptxBSP.pptx
BSP.pptx
 
OVERVIEW OF RTOS
OVERVIEW OF RTOSOVERVIEW OF RTOS
OVERVIEW OF RTOS
 
Robotics Applications.pptx
Robotics Applications.pptxRobotics Applications.pptx
Robotics Applications.pptx
 
Robot Drives And End Effectors.pptx
Robot Drives And End Effectors.pptxRobot Drives And End Effectors.pptx
Robot Drives And End Effectors.pptx
 
Robot Anatomy And Motion Analysis.pptx
Robot Anatomy And Motion Analysis.pptxRobot Anatomy And Motion Analysis.pptx
Robot Anatomy And Motion Analysis.pptx
 
Governors.pptx
 Governors.pptx Governors.pptx
Governors.pptx
 
Avoiding Risk & Harmful Habits.pptx
Avoiding Risk & Harmful Habits.pptxAvoiding Risk & Harmful Habits.pptx
Avoiding Risk & Harmful Habits.pptx
 
Creating Healthy & Caring Relationships.pptx
Creating Healthy & Caring Relationships.pptxCreating Healthy & Caring Relationships.pptx
Creating Healthy & Caring Relationships.pptx
 
Building Healthy Life Style for Better Future.pptx
Building Healthy Life Style for Better Future.pptxBuilding Healthy Life Style for Better Future.pptx
Building Healthy Life Style for Better Future.pptx
 
Good Health & It’s balance for positive mindset.pptx
Good Health & It’s balance for positive mindset.pptxGood Health & It’s balance for positive mindset.pptx
Good Health & It’s balance for positive mindset.pptx
 
Joints.pptx
Joints.pptxJoints.pptx
Joints.pptx
 
Thread Forms.pptx
Thread Forms.pptxThread Forms.pptx
Thread Forms.pptx
 
Keys.pptx
Keys.pptxKeys.pptx
Keys.pptx
 
Associated IoT Technologies.pptx
Associated IoT Technologies.pptxAssociated IoT Technologies.pptx
Associated IoT Technologies.pptx
 
IoT Processing Topologies.pptx
IoT Processing Topologies.pptxIoT Processing Topologies.pptx
IoT Processing Topologies.pptx
 
Sensing & Actuation.pptx
Sensing & Actuation.pptxSensing & Actuation.pptx
Sensing & Actuation.pptx
 
Introduction to IoT (Basics of Networking & Emergence of IoT).pptx
Introduction to IoT (Basics of Networking & Emergence of IoT).pptxIntroduction to IoT (Basics of Networking & Emergence of IoT).pptx
Introduction to IoT (Basics of Networking & Emergence of IoT).pptx
 
Awarness on NAAC.pptx
Awarness on NAAC.pptxAwarness on NAAC.pptx
Awarness on NAAC.pptx
 

Recently uploaded

internship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerinternship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerunnathinaik
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
 
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...M56BOOKSTORE PRODUCT/SERVICE
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentInMediaRes1
 
CELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxCELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxJiesonDelaCerna
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsanshu789521
 
Roles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceRoles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceSamikshaHamane
 
History Class XII Ch. 3 Kinship, Caste and Class (1).pptx
History Class XII Ch. 3 Kinship, Caste and Class (1).pptxHistory Class XII Ch. 3 Kinship, Caste and Class (1).pptx
History Class XII Ch. 3 Kinship, Caste and Class (1).pptxsocialsciencegdgrohi
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 
Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaVirag Sontakke
 
Historical philosophical, theoretical, and legal foundations of special and i...
Historical philosophical, theoretical, and legal foundations of special and i...Historical philosophical, theoretical, and legal foundations of special and i...
Historical philosophical, theoretical, and legal foundations of special and i...jaredbarbolino94
 
How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17Celine George
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Celine George
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxthorishapillay1
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Celine George
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 

Recently uploaded (20)

internship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerinternship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developer
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
 
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media Component
 
CELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptxCELL CYCLE Division Science 8 quarter IV.pptx
CELL CYCLE Division Science 8 quarter IV.pptx
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha elections
 
Roles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceRoles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in Pharmacovigilance
 
9953330565 Low Rate Call Girls In Rohini Delhi NCR
9953330565 Low Rate Call Girls In Rohini  Delhi NCR9953330565 Low Rate Call Girls In Rohini  Delhi NCR
9953330565 Low Rate Call Girls In Rohini Delhi NCR
 
History Class XII Ch. 3 Kinship, Caste and Class (1).pptx
History Class XII Ch. 3 Kinship, Caste and Class (1).pptxHistory Class XII Ch. 3 Kinship, Caste and Class (1).pptx
History Class XII Ch. 3 Kinship, Caste and Class (1).pptx
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of India
 
Historical philosophical, theoretical, and legal foundations of special and i...
Historical philosophical, theoretical, and legal foundations of special and i...Historical philosophical, theoretical, and legal foundations of special and i...
Historical philosophical, theoretical, and legal foundations of special and i...
 
How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptx
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
 

Introduction to OS.pptx

  • 1. ROBOT OPERATING SYSTEM Department of Robotics & Automation JSS Academy of Technical Education, Bangalore-560060 (Course Code: 21RA54)
  • 2. Books Text Books: 1. Silberschatz, Galvin, Gagne, Operating System concepts 6th edition, John Wiley, 2003. 2. Raj Kamal, Systems -Architecture, Programming and Design, Tata McGraw Hill, 2006. 3. P. Raghavan, Amol Lad, Sriram Neelakandan, Embedded Linux System Design and Development, Auerbach Publications 2005. 4. Jonathan Corbet, Allesandro Rubini & Greg Kroah-Hartman, Linux Device Drivers 3rdedition, 2005. Reference Books: 1. https://www.youtube.com/watch?v=PEzpOembKNc 2. https://www.youtube.com/watch?v=mCs21yByQqk 3. https://www.youtube.com/watch?v=hDn4hM148V8
  • 3. Course Learning Objectives • Understand the fundamental concepts of Operating Systems. • Explain the mechanisms of Operating Systems to handle processes, threads and their communication. • Analyze the file structure and the protection and security mechanism. • Explain the Memory management technique to improve the CPU utilisation and its response speed.
  • 4. Course outcomes (Course Skill Set) CO1: Explain the basic concepts of operating systems and distributed systems. CO2: Explain RTOS task scheduling, task synchronisation and task communication mechanisms CO3: Install Linux for specified configuration, develop Linux C programs and implement Linux file system. At the end of the course, students will be able to,
  • 5. Continuous Internal Evaluation (CIE) • Three IA Tests, each of 20 Marks • Two assignments each of 10 Marks • The sum of three tests, two assignments, will be out of 100 marks and will be scaled down to 50 marks The minimum passing mark for the CIE is 40% of the maximum marks (20 marks out of 50)
  • 6. Semester End Examination(SEE) • The question paper shall be set for 100 marks. • The duration of SEE is 03 hours. • The question paper will have 10 questions. • 2 questions per module. Each question is set for 20 marks. • The students have to answer 5 full questions, selecting one full question from each module. • The student has to answer for 100 marks and marks scored out of 100 shall be proportionally reduced to 50 marks. • SEE minimum passing mark is 35% of the maximum marks (18 out of 50 marks). • Students should secure a minimum of 40% (40 marks out of 100) in the sum total of the CIE and SEE taken together.
  • 7. ROS MODULE 1: Introduction to Operating System
  • 8. Basic Principles, Operating System Structures, System Calls and Types, Processes: Concept Scheduling – Inter-Process Communication, Introduction to Distributed Operating System, Types of Network-Based OS. Content
  • 9. Introduction • An operating system (OS) is a Software that manages the Computer hardware. • It provides the basis for application programs • Act as an intermediary between the application and hardware. • Before exploring the role of an OS in a modern computing environment, it is essential to understand the organization and architecture of computer hardware, including the CPU, memory, I/O devices, and storage. • The role of an operating system is to allocate these resources to programs.
  • 10. Introduction What does Operating Systems Do • A computer system can be divided roughly into four components: the hardware, the operating system, the application programs, and the user. 1. Hardware: CPU, memory, and I/O devices provide basic computing resources for the system. 2. Application programs: Solve computing problems of users (word, Excel, Business programs etc.) 3. OS: Controls and coordinates the use of hardware among application programs. 4. Users: People, other computers
  • 11. Introduction OS Roles • Resource allocation among users & applications • Isolation of different users and applications from each other • Communication between users & applications • The operating system is the one program running at all times on the computer—usually called the kernel. • Along with the kernel, there are two other types of programs: 1. System programs: are associated with the OS but are not necessarily part of the kernel. 2. Application programs: include all programs not associated with the operation of the system. Definition of OS Kernel is a core component of an OS and serves as the main interface between the computer's physical hardware and the processes running on it.
  • 12. Introduction OS Roles User View • PC users: the system is designed for one user to control its resources. • The goal is to maximize the work (or play) that the user is performing. • In such cases, the OS is designed for ease of use, with little attention paid to performance and none towards resource utilization • Such systems are optimized for the single-user experience rather than the requirements of multiple users. • Terminal users: A user sits at a terminal connected to a mainframe or a minicomputer. • Other users are accessing the same computer through other terminals. • These users share resources and may exchange information. • The OS is designed to maximize resource utilization—CPU time, memory, and I/O are used efficiently.
  • 13. Introduction OS Roles User View • Workstations are connected to networks of other workstations and servers. • These users have dedicated resources, but also share resources such as networking & servers—file, compute, and print servers. • The OS is designed to compromise between individual usability and resource utilization. • Embedded computers: in-home devices and automobiles may have numeric keypads and may turn indicator lights on or off to show status. • Their OS is designed primarily to run without user intervention.
  • 14. Introduction OS Roles System View • An OS acts as a resource allocator • A computer system has many resources required to solve a problem: CPU time, memory space, file-storage space, I/O devices, etc. • The OS acts as the manager of these resources. • An operating system is a control program. • A control program manages the execution of user programs to prevent errors and improper computer use. • It is especially concerned with the operation and control of I/O devices.
  • 15. A personal computer today Introduction • Super AMOLED display • Capacitive touchscreen (multitouch) • Audio (speaker, microphone) • Vibration • S pen • 13 MP front camera • 2 MP back camera • Accelerometer • Gyroscope • Proximity sensor • Compass • Barometer • Temperature sensor • Humidity sensor • Gesture sensor • GPS • 4G LTE • NFC • WiFi • Bluetooth • Infrared • 64 GB internal storage • Adreno 330 GPU • Hexagon DSP • Multimedia processor Interaction Sensing Connectivity & Storage Acceleration
  • 16. Why should I study Operating Systems? • Need to understand the interaction between the hardware and software • Need to understand basic principles in the design of computer systems • Efficient resource management, security, etc. • It enables you to do things that are difficult/impossible otherwise.
  • 17. Operating systems are everywhere
  • 18. Computer-System Operation • When the computer is powered up or rebooted, it needs an initial program to run. • This initial program is called Bootstrap program • Bootstrap program is stored ROM. • It initializes all the hardware from CPU registers, device controllers & memory content. • Bootstrap program knows how to load the OS and how to start executing that system. • Bootstrap program will locate and load the OS kernel into memory. • The OS executes the first process, such as “init,” and waits for some event to occur. • An interrupt from either the hardware or the software signals the occurrence of an event. • Hardware will trigger an interrupt at any time by sending a signal to the CPU • Software will trigger an interrupt by executing a special operation called a system call Kernel is a core component of an OS and serves as the main interface between the computer's physical hardware and the processes running on it. What happens when we turn on computer?
  • 19. Computer-System Operation • The power supply sends electricity to the computer hardware, such as the motherboard, hard drive, and fans. • The BIOS (basic input/output system) initializes and performs a power-on self-test (POST), which checks the basic hardware components to ensure they are working properly. If any issues are detected, error messages may be displayed. • The OS, such as Windows or macOS, is loaded from the hard drive into the computer’s RAM • The OS then initializes its own components and drivers and presents the login screen or desktop environment to the user. What happens when we turn on computer?
  • 20. Computer-System Operation What happens when we turn on the computer?
  • 21. Operating System Services • An operating system provides an environment for the execution of programs. • OS services provide functions that are helpful to the users. A view of operating system services
  • 22. All operating systems have a user interface (UI). The interface can take several forms: a) Command-line interface (CLI) b) Batch interface: Batch interfaces take a single command from the user and process several tasks simultaneously without further user interaction c) Graphical user interface (GUI): the interface is a window system with a pointing device to direct I/O, choose from menus, and make selections and a keyboard to enter text. • Some OS provides two or all three of these variations. User interface Operating-System Services
  • 23. • The system must be able to load a program into memory and execute/run that program. • The program must be able to end its execution, either normally or abnormally (indicating error). Program Execution • A running program may require I/O, which may involve a file or an I/O device. • For specific devices, special functions may be desired (such as recording to a CD/or DVD drive) • For efficiency and protection, users usually cannot control I/O devices directly. • Hence, the operating system must provide a means to do I/O. I/O operations Operating-System Services
  • 24. • Operating systems provide a variety of file systems • Create, delete, search, and list file information. • Permissions management to allow or deny access to files/directories based on file ownership File-system manipulation • The process needs to exchange information with another process. • Communication may occur between processes executing on the same computer or between processes executing on different computer systems tied together by a computer network. • Communications may be implemented via shared memory / through message passing, in which packets of information are moved between processes by the operating system. Communications Operating-System Services
  • 25. • When there are multiple users / multiple jobs running at the same time, resources must be allocated to each of them. • The OS manages different types of resources. • CPU cycles, main memory, and file storage have a special allocation code • I/O devices may have much more general requests and release codes. • Example: in determining how best to use the CPU, OS have CPU-scheduling routines that consider the CPU’s speed, the jobs that must be executed, the number of registers available, etc. • Routines to allocate printers, modems, USB storage drives, and other peripheral devices. Resource Allocation Operating-System Services
  • 26. • The OS needs to be constantly aware of possible errors. • Errors may occur in the; a) CPU b) Memory hardware (memory error or a power failure), c) I/O devices (connection failure on a network or lack of paper in the printer), d) User program (arithmetic overflow, CPU utilization) • For each type of error, the OS should take the appropriate action to ensure correct and consistent computing. • Debugging facilities can significantly enhance the users’ and programmers’ abilities to use the system efficiently. Error Detection Operating-System Services
  • 27. • To keep track of which users use how much and what kinds of computer resources • Record keeping: used for accounting. • Usage statistics: a tool for researchers to reconfigure the system to improve computing services. Accounting Protection and security • Protection involves ensuring all access to system resources is controlled. • Security: involves the user to authenticate himself / herself to the system, using a password, to gain access • Defending external I/O devices, modems and network adapters, from invalid access attempts and recording all connections for detection of break-ins. • If a system is to be protected and secure, precautions must be instituted throughout it. Operating-System Services
  • 28. Operating System Structure An OS provides the environment / platform within which programs are executed. While designing a new operating system, the goals of the system should be well-defined. The goals form the basis for choices among various algorithms and strategies. 1. OS focuses on the services that the system provides. 2. Interface that it makes available to users and programmers; 3. Its components and their interconnections.
  • 29. Operating System Structure • Modern operating system must be engineered carefully if it is to function properly and be modified easily. • A common approach is to partition the task into small components. • Each of these modules should be a well-defined portion of the system, with carefully defined inputs, outputs, and functions. 1. Simple Structure 2. Layered Approach 3. Microkernels 4. Modules
  • 30. Operating-System Structure • The important aspect of OS is the ability to multiprogram and multitask. 1. Multiprogramming 2. Multitasking (Time-sharing)
  • 31. Operating-System Structure • A single program cannot always keep the CPU or I/O devices busy. • Multiprogramming increases CPU utilisation by organizing jobs (code and data), so the CPU always has one job to execute. • The OS simultaneously keeps several jobs in memory (Fig.) • Since the main memory is too small to accommodate all jobs, the jobs are kept on the disk in the job pool. • The job pool consists of all processes residing on disk awaiting allocation of main memory Memory layout for a multiprogramming system 1. Multiprogramming
  • 32. Operating-System Structure • The operating system picks and executes one of the jobs in memory. • The job may have to wait for some task, such as an I/O operation, to complete. • In a non-multiprogramming system, the CPU would sit idle. • In a multiprogramming system, the OS switches to another job & executes it. • When that job needs to wait, the CPU is switched to another job, and so on. Eventually, the first job finishes waiting and gets the CPU back. • As long as at least one job needs to execute, the CPU is never idle. Example: While one case is waiting to go to trial or have papers typed, the lawyer can work on another case. If he has enough clients, the lawyer will never be idle 1. Multiprogramming
  • 33. Operating-System Structure • Multiprogrammed systems provide an environment where the various system resources (CPU, Memory, peripheral devices) are utilized effectively, but they do not provide user interaction with the computer system. 1. Multiprogramming
  • 34. Operating-System Structure • Time sharing (or multitasking) is a logical extension of multiprogramming. • In time-sharing systems, the CPU executes multiple jobs by switching among them. • Switches occur so frequently that the users can interact with each program while it is running. • Time sharing requires an interactive (or hands-on) computer system, which provides direct communication between the user and the system. • User gives instructions to the OS or a program directly, using an input device and waits for immediate results on an output device. • Accordingly, the response time should be short (Quick)—typically less than one second. Time-sharing (Multitasking)
  • 35. Operating-System Structure • A time-shared OS allows many users to share the computer simultaneously. • Each command in a time-shared system tends to be short (Quick); • As the system switches rapidly from one user to the next, each user is given the impression that the entire computer system is dedicated to his use, though it is being shared among many users. Time-sharing (Multitasking)
  • 36. Operating-System Structure • A time-shared OS CPU scheduling and multiprogramming to provide each user with a time-shared computer. • Each user has at least one separate program in memory. • A program loaded into memory and executing is called a process. • When a process executes for a short time before it either finishes or needs to perform I/O. • I/O may be interactive; output goes to a display for the user, and input comes from a user’s keyboard, mouse, or other device. • The interactive I/O typically runs at “people speeds,” it may take a long time to complete. Time-sharing
  • 37. System Calls • System calls provide/act as an interface between a process and an OS. • System calls are available as routines written in C and C++ • There are 2 modes of execution for a program: • 1) User mode • Do not have access to resources like memory or hardware • When a program crashes, the entire system will not break down • 2) Kernel mode • Privileged mode • Have access to resources • When a program crashes, the entire system breaks down • As user mode is safer, most programs run in user mode. • But some programs might need access to resources, so they will make a call to the OS to request these. This call is a system call. When the OS receives the system call, it will change the mode of the program to kernel mode. This is called mode switching.
  • 38. System Calls • Example of a system call sequence for writing a simple program to read data from one file and copy them to another file First sequence of System calls Copying Process
  • 39. System Calls Types of System Calls System calls can be grouped roughly into 5 major categories: 1. Process control 2. File manipulation 3. Device manipulation 4. Information Maintenance 5. Communications
  • 40. System Calls Types of System Calls 1. Process control: System calls that are used for controlling the process ◦ end, abort ◦ load, execute ◦ create process, terminate process ◦ get process attributes, set process attributes ◦ wait for time ◦ wait event, signal event ◦ allocate and free memory • When a process runs, it has to run and terminate or hold typically or abnormally. • The process should come to a halt once it is completed; otherwise, errors might occur. • If the error occurs in the execution of the process, then that process has to be halted or aborted abnormally Examples of system calls
  • 41. System Calls Types of System Calls 2. File Management: System calls that are used for managing or manipulating the files ◦ create file, delete file ◦ open, close ◦ read, write, reposition ◦ get file attributes, set file attributes Examples of system calls
  • 42. System Calls Types of System Calls 3. Device Management: System calls that are used for managing or manipulating devices (i/o, other devices) ◦ request device, release device ◦ read, write, reposition ◦ get device attributes, set device attributes ◦ logically attach or detach devices Examples of system calls • A process may need several resources to execute—main memory, disk drives, and access to files. • If the resources are available, they can be granted, and control can be returned to the user process
  • 43. System Calls Types of System Calls 4. Information Maintenance: a system call used to maintain information. • These system calls handle information and its transfer between the OS and the user program. ◦ get time or date, set time or date ◦ get system data, set system data ◦ get process, file, or device attributes ◦ set process, file, or device attributes Examples of system calls All the information about the system must be maintained and updated Example: Date and time
  • 44. System Calls Types of System Calls 5. Communication: useful for interprocess communication, also deals with creating and deleting a communication connection. ◦ create, delete communication connection ◦ send, and receive messages ◦ transfer status information ◦ attach or detach remote devices/computer from network Examples of system calls • These types of system calls are used for communication between different processes and devices. When the process is executing it needs to communicate or access each other or other processes or needs to know the state of other processes To communicate between the two processes, we need to create a connection, after communication, we need to delete or close the communication
  • 45. System Calls What is the Purpose of System Calls in OS? • If a file system needs files to be created or deleted. • A system call is also necessary for reading and writing from files. • Development and administration of new procedures. • System calls are also required for network connections. This also applies to packet sending and receiving. • A system call is necessary to access hardware such as a printer, scanner, etc.
  • 46. Process Management Processes: Concept Scheduling – Inter-Process Communication
  • 47. Process Management • Early computer systems allowed only one program to be executed at a time. • This program had complete control of the system and had access to all the system’s resources. • Current-day computer systems allow multiple programs to be loaded into memory and executed concurrently • A process is the unit of work in a modern time-sharing system (Multitasking)
  • 48. Process Management • A process is a program in execution. • A process need resources, such as CPU time, memory, files, & I/O devices, to accomplish its task. • The resources are allocated to the process when it is created or while executing. • Systems consist of a collection of processes: • OS processes execute system code, and user processes execute user code. • All processes may be executed concurrently. • Traditionally, a process contained only a single thread of control. • Modern operating systems now support processes that have multiple threads. • The OS is responsible for the following activities; • Creation & and deletion of both user and system processes • Scheduling of processes; • Mechanisms for synchronization, communication, & and handling for processes. Process
  • 49. Process Management Process Concept • A batch system executes a process (job), whereas a time-shared (multitasking) system has user programs or tasks. • Even on a single-user system such as MS Windows, a user may be able to run several programs at one time: a word processor, a Web browser, and an e-mail package. • Even if the user can execute only one program at a time, the operating system may need to support its own internal programmed activities, such as memory management. • All these activities are similar, we call all of them processes (jobs). CPU Activities
  • 50. Process Management Process Structure of Process in Memory • A process is a program in execution. • A process is more than the program code, known as a text section. • Program includes the current activity, as represented by the program Counter (PC) and the contents of the processor’s registers. • Process stack: which contains temporary data (such as function parameters, return addresses, and local variables) • Data section: contains global variables. • Heap: memory, dynamically allocated during process run time. The structure of a process in memory is shown in Figure
  • 51. Process Management Process Process in Memory • A program by itself is not a process. • Program is a passive entity, such as a file containing a list of instructions stored on disk (often called an executable file), • A process is an active entity, with a program counter specifying the next instruction to execute • A program becomes a process when an executable file is loaded into memory. • Two techniques for loading executable files are Double-clicking an icon and Entering the name of the exe file in the command line
  • 52. Process Management Process Process in Memory • Two processes may be associated with the same program, they are nevertheless considered two separate execution sequences. • E.g., Users may be running different copies of the mail program, or may invoke many copies of the Web browser program. • Each of these is a separate process, and although the text sections are equivalent, the data, heap, and stack sections vary.
  • 53. Process Management Process State • As a process executes, it changes state. • The state of a process is defined in part by the current activity of that process. • Each process may be in one of the following states: • New: The process is being created. • Running: Instructions are being executed. • Waiting: Process is waiting for some event to occur (such as an I/O completion) • Ready: Process is waiting to be assigned to a processor. • Terminated. Process has finished execution Diagram of process state.
  • 54. Process Management Process Control Block • Each process is represented in the OS by a process control block (PCB), also called a task control block. • PCB has many information associated with a specific process. Process control block (PCB) 1. Process state: State may be new, ready, running, waiting, halted, and so on. 2. Process Number: Every process is assigned a unique id known as process ID or PID which stores the process identifier. 3. Program counter: indicates the address of the next instruction to be executed for this process 4. Registers: CPU registers which include the accumulator, base, registers, and general-purpose registers.
  • 55. Process Management Process Control Block Process control block 5. Memory-management information: information about the memory management system used by the OS. This may include page tables, segment tables, etc. 6. Open files list: This information includes the list of files opened for a process. 7. Accounting information: Includes the amount of CPU used, and process numbers etc. 8. I/O status information: List of I/O devices used by the process.
  • 56. Process Management Threads • Within a program, a Thread is a separate execution path. • A thread is a single sequence stream within a process. • OS creates and manages threads, and they share same memory and resources as the program that created them. This enables multiple threads to collaborate and work efficiently within a single program. • Each thread belongs to exactly one process. • Threads run in parallel improving the application performance • Each such thread has its own CPU state and stack, but they share the address space of the process and the environment. MS Word uses multiple threads: one thread to format the text, another thread to process inputs, etc.
  • 57. Process Management Threads • In an OS that supports multithreading, the process consist of many threads. • But threads can be effective only if CPU is more than 1 otherwise two threads have to context switch for that single CPU.
  • 58. Process Scheduling • Process scheduling is the activity of the process manager that handles the removal of the running process from the CPU and the selection of another process based on a particular strategy. • Process scheduling is an essential part of a Multiprogramming operating system. • OS allow more than one process to be loaded into the memory at a time and the loaded process shares the CPU using time multiplexing.
  • 60. Process Scheduling Types of Process Schedulers There are three types of process schedulers 1. Long Term or Job Scheduler 2. Short-Term or CPU Scheduler 3. Medium-Term Scheduler
  • 61. Process Scheduling Types of Process Schedulers 1. Long Term or Job Scheduler • It brings the new process to the ‘Ready State’. • It controls the Degree of Multi-programming, i.e., no. of processes present in a ready state • I/O-bound tasks use much of time in I/O operations while CPU-bound processes spend time on the CPU. • Job scheduler increases efficiency by maintaining a balance between the two. • Typically used in batch-processing systems.
  • 62. Process Scheduling Types of Process Schedulers 2. Short-Term or CPU Scheduler • Short-term scheduler only selects the process to schedule it doesn’t load the process on running. • Here is when all the scheduling algorithms are used.
  • 63. Process Scheduling Types of Process Schedulers 3. Medium-Term Scheduler • It is responsible for suspending and resuming the process. • It mainly does swapping (moving processes from main memory to disk and vice versa). • Helps in maintaining a balance between the I/O bound and the CPU bound. • It reduces the degree of multiprogramming.
  • 64. Process Scheduling Context Switching • A context switching is the mechanism to store and restore the state or context of a CPU in Process Control block so that a process execution can be resumed from the same point at a later time. • Context switcher enables multiple processes to share a single CPU. • Context switching is an essential part of multitasking OS features. • When the scheduler switches the CPU from executing one process to another, the state of current running process is stored into the PCB. • At that point, the second process can start executing.
  • 65. Process Scheduling Context Switching • When the process is switched, the following information is stored for later use. • Program Counter • Scheduling information • Base and limit register value • Currently used register • Changed State • I/O State information • Accounting information
  • 66. Process Scheduling Interprocess Communication • It is the mechanism provided by the OS, allows processes to communicate with each other. • Communication involve a process letting another process know that some event has occurred or the transferring of data from one process to another.
  • 67. Process Scheduling Interprocess Communication Reasons for providing an environment that allows process cooperation 1. Computation speedup. If we want a particular task to run faster, we must break it into subtasks, each will be executing in parallel with the others 2. Information sharing. users wants to share the information (shared file), we must provide an environment to allow concurrent access to share information 3. Modularity. Users want to construct the system in a modular fashion, dividing the system functions into separate process or threads 4. Convenience. users work on many tasks at the same time. For instance, a user may be editing, printing, and compiling in parallel.
  • 68. Process Scheduling Interprocess Communication There are two fundamental models of interprocess communication: (1) Shared memory (2) Message passing.
  • 69. Process Scheduling Interprocess Communication • Shared Memory: type of memory, used or accessed by multiple processes simultaneously. • Primarily used so that the processes can communicate with each other. • Shared memory is used by almost all POSIX and Windows operating systems as well. • Message Passing: Processes to synchronize and communicate with each other. • By using the message passing, the processes can communicate with each other without restoring the variables. Message passing Shared memory
  • 70. Process Scheduling Interprocess Communication Message passing Shared memory • Process A sends a message like “M” to the OS kernel. • This message is then read by Process B. • A communication link is required between the two processes for successful message exchange. • Process A wants to communicate with process B and needs to attach its address space to this shared memory segment. • Process A will write a message to the shared memory, and Process B will read that message from the shared memory. • Processes are responsible for ensuring synchronization so that both processes do not write to the same location at the same time.
  • 71. Introduction to Distributed Operating System
  • 72. • A distributed system is a collection of processors (CPU) that do not share memory or a clock. • Each processor has its own local memory. • Processors communicate with one another through communication lines such as local-area or wide-area networks. Distributed Operating System Small microprocessors, Workstations, Minicomputers, and Large general-purpose computer systems.
  • 73. • A distributed system is a collection of processors (CPU) that do not share memory or a clock. • Each processor has its own local memory. • Processors communicate with one another through communication lines such as local-area or wide-area networks. Distributed Operating System Examples of Distributed Operating System
  • 74. Distributed Operating System A distributed system
  • 75. There are four major reasons for building distributed systems: 1. Resource sharing 2. Computation speedup 3. Reliability 4. Communication Distributed Operating System A distributed system
  • 76. 1. Resource sharing Distributed Operating System If a number of different sites are connected to one another, then a user at one site may be able to use the resources available at another. E.g.: User at site A may be using a laser printer located at site B. User at B may access a file that resides at A. Distributed system provides mechanisms for sharing files at remote sites, processing information in a distributed database, printing files at remote sites, using remote specialized hardware devices A distributed system
  • 77. 2. Computation Speedup Distributed Operating System • If a particular site is currently overloaded with jobs, some of them can be moved to other, lightly loaded sites. This movement of jobs is called load sharing Automated load sharing, in which the distributed operating system automatically moves jobs, is not yet common in commercial systems. A distributed system
  • 78. 3. Reliability Distributed Operating System • If one site fails in a distributed system, the remaining sites can continue operating, giving the system better reliability. • With enough redundancy (in both hardware and data), the system can continue operation, even if some of its sites have failed. A distributed system
  • 79. 4. Communication Distributed Operating System • When several sites are connected to one another by a communication network, users at the various sites have the opportunity to exchange information. A distributed system
  • 80. Applications of Distributed OS Distributed Operating System • Internet Technology • Distributed databases System • Air Traffic Control System • Airline reservation Control systems • Peep-to-peer networks system • Telecommunication networks • Scientific Computing System • Cluster Computing • Grid Computing • Data rendering
  • 81. Examples of Distributed Operating Systems Distributed Operating System • IRIX operating system is a Silicon Graphics multiprocessor workstation version of UNIX System VR3 • DYNIX operating system is used on Sequent Symmetry multiprocessor computers. • AIX is an operating system designed for IBM RS/6000 systems. • Open Foundation Software created the OSF/1 operating system, which is UNIX compatible. • Mach/OS is a UNIX-compatible multi-threading and multitasking operating system. • Solaris is an operating system for SUN multiprocessor workstations.
  • 82. Types of Network based operating systems Distributed Operating System • Network OS provides an environment in which users can access remote resources by either logging in to the appropriate remote machine or transferring data from the remote machine to their own machines. 1. Peer-to-Peer Systems 2. Client-Server Systems 3. Middleware 4. N-tier Systems
  • 83. Types of Network based operating systems Distributed Operating System • In a peer-to-peer (P2P) distributed operating system, each computer or node is equal in terms of functionality and can act as a client or server. • Nodes can share resources such as processing power, storage, and bandwidth with each other. • P2P systems are often used in file sharing, instant messaging, and gaming applications. • They are also known as “Loosely Coupled Systems” Peer-to-Peer Systems
  • 84. Types of Network based operating systems Distributed Operating System • In a client-server distributed operating system, the server provides a specific set of services or resources to the client. • The client makes requests to the server, and the server responds by providing the requested service or resource. • Client-server distributed operating systems are commonly used in enterprise applications Client-Server Systems
  • 85. Types of Network based operating systems Distributed Operating System • Middleware is a software layer that lies between the OS and application software. • It provides a set of services that enable communication between different applications running on different machines. • Middleware is used to create distributed systems that can run across multiple platforms. Middleware
  • 86. Types of Network based operating systems Distributed Operating System • N-tier, in simpler terms, means - any number of tiers with no limit. • N-tier systems allow you to make use of computer hardware and software resources dynamically • N-tier distributed operating systems essentially allow you to make your own mix of hardware and software layers to provide a modular collection of services. Think of it as software logo. N-tier Systems
  • 87. END