SlideShare a Scribd company logo
CHROME
OPERATING
SYSTEM
TABLE OF CONTENTS
● INTRODUCTION
● CHROME OS ARCHITECTURE
● PROCESS MANAGEMENT
● PROCESS SYNCHRONIZATION
● CHROME OS SCHEDULING
● CONCLUSION
INTRODUCTION
Chrome OS Architecture
● Chrome os is built on Linux kernel
● It is 3 tier architecture system
○ Firmware
○ Linux kernel
○ Chromium and window manger
FIRMWARE
● It is a software that is embedded into hardware providing low
level control for device functionality
● Stored in rom,eeprom or flash memory
● Booting the os faster and more secure.
● To achieve this goal we are removing unnecessary components
and adding support for verifying each step in the boot process
Functionalities:
 System recovery: the recovery firmware can re-install
chromium os in the event that the system has become
corrupt or compromised.
 Verified boot: each time the system boots, chromium os
verifies that the firmware, kernel, and system image have not
been tampered with or become corrupt. This process starts
in the firmware.
 Fast boot: we have improved boot performance by
removing a lot of complexity that is normally found in pc
firmware.
LINUX KERNAL
It is a computer program that manages input/output requests
from software, and translates them into data
processing instructions for the central processing unit and
other electronic components of a computer. The kernel
performs its tasks, such as system call interface (sci), process
management, virtual file system, memory management and
device driver and network stack.
SUBSYSTEMS OF LINUX
KERNAL
● System call interface
● Process management
● Virtual file system
● Memory management
● Device drivers
CHROMIUM AND WINDOW
MANAGER
● The window manager is a piece
of software responsible for
managing the different windows that
Appear on your screen.
● It controls :
● Placement of windows
● Drawing of the borders and scrollbars
● Ensures that the programs are shown well
● Window manager uses the X server which is the software responsible for drawing
everything on
● The screen. But the window manager is much more responsible for the decisions about
feel and
● Look of the windows on your screen.
CHROMIUM
● Chromium plays a critical role in Chrome OS, serving as the core web browsing
engine and providing the foundation for many features and functionalities within
the operating system. Here's a breakdown of Chromium's role in Chrome OS:
● Web Browsing Engine:
● Integration with Chrome OS
● Web App Platform
PROCESS MANAGEMENT
Creation of process
1. Request to Start a Task:
Imagine you want to open a new app or website on your Chromebook. You click on its icon
or type its name in the search bar, signaling to Chrome OS that you want to start a new task.
2. Initialization:
Chrome OS receives your request and begins the process of starting the task. It prepares
everything needed for the task to run smoothly.
3. Allocation of Resources:
Chrome OS allocates resources such as memory space, CPU time, and any necessary files or
data for the new task. Think of this like setting up a workspace for the task to operate in.
Process management
4.Launching the Process:
Once everything is ready, Chrome OS launches a new process for the task. A process is like a
container that holds all the instructions and data needed to carry out the task.
5.Task Execution:
The newly created process starts executing its instructions. For example, if you opened a web
browser, the process would start loading the webpage you requested.
6.Task Completion:
The process continues running until the task is completed or you close the app or website. Once
the task is finished, Chrome OS may terminate the process to free up resources for other tasks.
7.Cleanup:
After the process ends, Chrome OS cleans up any resources that were allocated to it. This
ensures that your Chromebook's resources are used efficiently and that there are no unnecessary
leftovers from completed tasks.
Process management
● In Chrome OS, processes are managed through a combination of the Linux kernel's capabilities
and Chrome-specific optimizations. Here's a breakdown of how processes are managed in
Chrome OS:
1. Linux Kernel Mechanisms:
● Chrome OS is built on the Linux kernel, which provides core functionalities for process
management, such as process creation, scheduling, memory management, and inter-process
communication (IPC).
● The Linux kernel handles the creation and termination of processes using system calls like ‘fork()’
and ‘exec()’
● It manages CPU scheduling to allocate processor time to different processes, prioritizing tasks
based on their importance and resource requirements.
Process management
• The kernel handles memory management, allocating and deallocating memory for processes, and
providing mechanisms like virtual memory to ensure each process has its own address space.
• Inter-process communication (IPC) mechanisms provided by the Linux kernel, such as pipes,
sockets, and signals, enable communication between processes.
Chrome-specific Optimizations:
Chrome OS incorporates optimizations specific to its environment to enhance process management:
• Sandboxing: Chrome OS uses sandboxing extensively to isolate processes from one another
and from the underlying system. Each Chrome tab, extension, and app runs within its own
sandboxed environment, preventing them from accessing unauthorized resources and
enhancing security.
UNIQUE FEATURES OF CHROMEOS IN PROCESS
MANAGEMENT:
● Lightweight Processes
● Single Process Model
● Cooperative Multitasking
● Priority Management
● Sandboxing
PROCESS
SYNCHRONIZATION
● In Chrome OS, process synchronization refers to coordinating and managing
concurrent processes running on the system. Chrome OS, like other operating
systems, uses various mechanisms for process synchronization to ensure proper
communication, coordination, and data consistency between processes.
● Here are some common mechanisms used for process synchronization in
Chrome OS:
● Mutexes (Mutual Exclusion): Mutexes are used to ensure that only one
process can access a shared resource at a time. Processes acquire the mutex
before accessing the shared resource and release it when they're done. This
prevents multiple processes from concurrently modifying shared data, thus
avoiding conflicts and maintaining data integrity.
● Semaphores: Semaphores are a more generalized synchronization primitive
that can be used to control access to a shared resource by multiple processes.
They can be used to enforce limits on the number of processes accessing a
resource simultaneously or to signal events between processes.
● Condition Variables: Condition variables are synchronization primitives that
allow processes to wait for a certain condition to become true before
proceeding. They are often used in conjunction with mutexes to implement
more complex synchronization patterns, such as producer-consumer
relationships or reader-writer locks.
Message Passing: Message passing involves processes communicating with
each other by sending and receiving messages. Chrome OS may use message
passing mechanisms for inter-process communication, allowing processes to
synchronize their actions by exchanging data and signals.
Asynchronous Messaging with Mojo IPC:
● Chrome OS utilizes a messaging system called Mojo IPC (Inter-Process
Communication). This system enables processes to communicate
asynchronously, meaning they can send messages to each other without having
to wait for an immediate response.
● Mojo IPC is designed to be fast and secure. It facilitates efficient
communication between processes while maintaining strict security boundaries
to prevent unauthorized access or interference.
Key features of Mojo IPC include:
● Message Queuing: Messages sent between processes are queued up for
delivery, allowing processes to continue executing without waiting for a
response.
● Pipelining: Mojo IPC supports pipelining, where multiple messages can be
sent in parallel without blocking each other, further enhancing communication
efficiency.
● Error Handling: The system includes robust error handling mechanisms to
deal with communication failures or unexpected issues gracefully.
Smart Process Scheduling:
● Chrome OS employs a smart process scheduling algorithm to optimize the
utilization of system resources and enhance user experience.
This scheduling algorithm takes into account various factors such as:
● Available Resources: It considers the current availability of CPU, memory, and
other system resources to allocate them efficiently among running processes.
● User Activity: The algorithm monitors user interactions and prioritizes
processes accordingly to ensure responsiveness, especially for foreground
applications.
● Power Management: Chrome OS also considers power management goals,
such as minimizing battery consumption, by intelligently scheduling processes to
optimize energy efficiency.
Chrome OS uses a supervisor process called "init" to manage all of the other
processes on the system.
DEADLOCKS IN CHROMEOS:
• Tab synchronization: In Chrome OS, tabs can synchronize their state across
multiple devices. This synchronization can lead to deadlocks if one tab is
waiting for a resource that is locked by another tab on a different device.
• GPU resource contention: Chrome OS uses the GPU for tasks such as
hardware acceleration and video playback. If multiple processes are
competing for GPU resources, it can lead to deadlocks and system instability.
● PREVENTION OF DEADLOCKS IN CHROMEOS:
 Thread prioritization: Chrome OS assigns different priorities to different
threads based on their importance, allowing critical threads to execute first
and reducing the chances of deadlocks.
 Graceful shutdown: When a process is terminated, Chrome OS ensures that
all resources used by the process are released in a controlled and orderly
manner, reducing the risk of deadlocks caused by resource conflicts.
CHROME OS SCHEDULING
● Chrome OS scheduling refers to the process by which the Chrome operating
system manages and prioritizes tasks and processes running on a device
SCHEDULING ALGORITHM
• Chrome OS uses a Preemptive priority-based scheduling algorithm
• Processes with higher priority levels are given preferential treatment
• Operating system assigns priority levels based on importance and resource
requirements
CGROUPS
• Chrome OS uses cgroups to group related processes together
• Cgroups help manage resource allocation and prevent monopolization of
system resources
EXAMPLE OF PREEMPTIVE PRIORITY BASED SCHEDULING

More Related Content

PPT
Introduction and history of linux
PPTX
Apple mac os
PPTX
introduction to system administration
DOCX
Chromium os architecture report
ODP
An Introduction to Linux
PPT
Linux
PPT
Visual studio.net
Introduction and history of linux
Apple mac os
introduction to system administration
Chromium os architecture report
An Introduction to Linux
Linux
Visual studio.net

What's hot (20)

PPT
Google Chrome Operating System
DOC
Assignment unix & shell programming
PPTX
A History of Linux
PPTX
Difference between Mac and Window
PDF
Linux File System
PPTX
linux vs window
PPTX
Unix seminar
PPTX
CHROME OS.pptx
PPTX
Introduction 2 linux
PPT
Linux - Introductions to Linux Operating System
PDF
Linux systems - Linux Commands and Shell Scripting
PPTX
A History of Mac OS
PPTX
CentOS Operating System Presentation (Southeast University)
PPTX
Comparison of OS
PPT
Duties of a system administrator
PDF
PPT
Sistem operasi linux
PPTX
Windows 8.1
Google Chrome Operating System
Assignment unix & shell programming
A History of Linux
Difference between Mac and Window
Linux File System
linux vs window
Unix seminar
CHROME OS.pptx
Introduction 2 linux
Linux - Introductions to Linux Operating System
Linux systems - Linux Commands and Shell Scripting
A History of Mac OS
CentOS Operating System Presentation (Southeast University)
Comparison of OS
Duties of a system administrator
Sistem operasi linux
Windows 8.1
Ad

Similar to complete case study on the chrome os ppt (20)

ODP
Chrome Operating System
PPT
Google Chrome Operating System
DOCX
AbdullahFawad_OS_Assignment.docx
DOCX
AbdullahFawad_OS_Assignment.docx
PPT
Chromiumos
PPT
Introduction to chrome os
PPTX
Os presentation (1)
PPT
Introduction To Google Chrome Os
PPTX
Google chrome by JD
PPTX
Chrome os
PPTX
CHROME OS.pptx
PPTX
Google chrome operating system
PPTX
Google chrome os
PPTX
Google Chrome OS
PPTX
Chrome Os
PPT
Google chrome os chromebook
PPTX
Google chrome OS
PPT
An Introduction to Google Chrome OS..........
PDF
Google Chrome OS
Chrome Operating System
Google Chrome Operating System
AbdullahFawad_OS_Assignment.docx
AbdullahFawad_OS_Assignment.docx
Chromiumos
Introduction to chrome os
Os presentation (1)
Introduction To Google Chrome Os
Google chrome by JD
Chrome os
CHROME OS.pptx
Google chrome operating system
Google chrome os
Google Chrome OS
Chrome Os
Google chrome os chromebook
Google chrome OS
An Introduction to Google Chrome OS..........
Google Chrome OS
Ad

Recently uploaded (20)

PPTX
MYSQL Presentation for SQL database connectivity
PDF
cuic standard and advanced reporting.pdf
PDF
Electronic commerce courselecture one. Pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
Cloud computing and distributed systems.
PPTX
Machine Learning_overview_presentation.pptx
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Encapsulation theory and applications.pdf
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Empathic Computing: Creating Shared Understanding
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Machine learning based COVID-19 study performance prediction
PPTX
Programs and apps: productivity, graphics, security and other tools
PPTX
A Presentation on Artificial Intelligence
MYSQL Presentation for SQL database connectivity
cuic standard and advanced reporting.pdf
Electronic commerce courselecture one. Pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
Cloud computing and distributed systems.
Machine Learning_overview_presentation.pptx
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Encapsulation theory and applications.pdf
Per capita expenditure prediction using model stacking based on satellite ima...
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Dropbox Q2 2025 Financial Results & Investor Presentation
Spectral efficient network and resource selection model in 5G networks
Empathic Computing: Creating Shared Understanding
20250228 LYD VKU AI Blended-Learning.pptx
Machine learning based COVID-19 study performance prediction
Programs and apps: productivity, graphics, security and other tools
A Presentation on Artificial Intelligence

complete case study on the chrome os ppt

  • 2. TABLE OF CONTENTS ● INTRODUCTION ● CHROME OS ARCHITECTURE ● PROCESS MANAGEMENT ● PROCESS SYNCHRONIZATION ● CHROME OS SCHEDULING ● CONCLUSION
  • 4. Chrome OS Architecture ● Chrome os is built on Linux kernel ● It is 3 tier architecture system ○ Firmware ○ Linux kernel ○ Chromium and window manger
  • 5. FIRMWARE ● It is a software that is embedded into hardware providing low level control for device functionality ● Stored in rom,eeprom or flash memory ● Booting the os faster and more secure. ● To achieve this goal we are removing unnecessary components and adding support for verifying each step in the boot process Functionalities:  System recovery: the recovery firmware can re-install chromium os in the event that the system has become corrupt or compromised.  Verified boot: each time the system boots, chromium os verifies that the firmware, kernel, and system image have not been tampered with or become corrupt. This process starts in the firmware.  Fast boot: we have improved boot performance by removing a lot of complexity that is normally found in pc firmware.
  • 6. LINUX KERNAL It is a computer program that manages input/output requests from software, and translates them into data processing instructions for the central processing unit and other electronic components of a computer. The kernel performs its tasks, such as system call interface (sci), process management, virtual file system, memory management and device driver and network stack.
  • 7. SUBSYSTEMS OF LINUX KERNAL ● System call interface ● Process management ● Virtual file system ● Memory management ● Device drivers
  • 8. CHROMIUM AND WINDOW MANAGER ● The window manager is a piece of software responsible for managing the different windows that Appear on your screen. ● It controls : ● Placement of windows ● Drawing of the borders and scrollbars ● Ensures that the programs are shown well ● Window manager uses the X server which is the software responsible for drawing everything on ● The screen. But the window manager is much more responsible for the decisions about feel and ● Look of the windows on your screen.
  • 9. CHROMIUM ● Chromium plays a critical role in Chrome OS, serving as the core web browsing engine and providing the foundation for many features and functionalities within the operating system. Here's a breakdown of Chromium's role in Chrome OS: ● Web Browsing Engine: ● Integration with Chrome OS ● Web App Platform
  • 10. PROCESS MANAGEMENT Creation of process 1. Request to Start a Task: Imagine you want to open a new app or website on your Chromebook. You click on its icon or type its name in the search bar, signaling to Chrome OS that you want to start a new task. 2. Initialization: Chrome OS receives your request and begins the process of starting the task. It prepares everything needed for the task to run smoothly. 3. Allocation of Resources: Chrome OS allocates resources such as memory space, CPU time, and any necessary files or data for the new task. Think of this like setting up a workspace for the task to operate in.
  • 11. Process management 4.Launching the Process: Once everything is ready, Chrome OS launches a new process for the task. A process is like a container that holds all the instructions and data needed to carry out the task. 5.Task Execution: The newly created process starts executing its instructions. For example, if you opened a web browser, the process would start loading the webpage you requested. 6.Task Completion: The process continues running until the task is completed or you close the app or website. Once the task is finished, Chrome OS may terminate the process to free up resources for other tasks. 7.Cleanup: After the process ends, Chrome OS cleans up any resources that were allocated to it. This ensures that your Chromebook's resources are used efficiently and that there are no unnecessary leftovers from completed tasks.
  • 12. Process management ● In Chrome OS, processes are managed through a combination of the Linux kernel's capabilities and Chrome-specific optimizations. Here's a breakdown of how processes are managed in Chrome OS: 1. Linux Kernel Mechanisms: ● Chrome OS is built on the Linux kernel, which provides core functionalities for process management, such as process creation, scheduling, memory management, and inter-process communication (IPC). ● The Linux kernel handles the creation and termination of processes using system calls like ‘fork()’ and ‘exec()’ ● It manages CPU scheduling to allocate processor time to different processes, prioritizing tasks based on their importance and resource requirements.
  • 13. Process management • The kernel handles memory management, allocating and deallocating memory for processes, and providing mechanisms like virtual memory to ensure each process has its own address space. • Inter-process communication (IPC) mechanisms provided by the Linux kernel, such as pipes, sockets, and signals, enable communication between processes. Chrome-specific Optimizations: Chrome OS incorporates optimizations specific to its environment to enhance process management: • Sandboxing: Chrome OS uses sandboxing extensively to isolate processes from one another and from the underlying system. Each Chrome tab, extension, and app runs within its own sandboxed environment, preventing them from accessing unauthorized resources and enhancing security.
  • 14. UNIQUE FEATURES OF CHROMEOS IN PROCESS MANAGEMENT: ● Lightweight Processes ● Single Process Model ● Cooperative Multitasking ● Priority Management ● Sandboxing
  • 15. PROCESS SYNCHRONIZATION ● In Chrome OS, process synchronization refers to coordinating and managing concurrent processes running on the system. Chrome OS, like other operating systems, uses various mechanisms for process synchronization to ensure proper communication, coordination, and data consistency between processes. ● Here are some common mechanisms used for process synchronization in Chrome OS:
  • 16. ● Mutexes (Mutual Exclusion): Mutexes are used to ensure that only one process can access a shared resource at a time. Processes acquire the mutex before accessing the shared resource and release it when they're done. This prevents multiple processes from concurrently modifying shared data, thus avoiding conflicts and maintaining data integrity. ● Semaphores: Semaphores are a more generalized synchronization primitive that can be used to control access to a shared resource by multiple processes. They can be used to enforce limits on the number of processes accessing a resource simultaneously or to signal events between processes. ● Condition Variables: Condition variables are synchronization primitives that allow processes to wait for a certain condition to become true before proceeding. They are often used in conjunction with mutexes to implement more complex synchronization patterns, such as producer-consumer relationships or reader-writer locks.
  • 17. Message Passing: Message passing involves processes communicating with each other by sending and receiving messages. Chrome OS may use message passing mechanisms for inter-process communication, allowing processes to synchronize their actions by exchanging data and signals. Asynchronous Messaging with Mojo IPC: ● Chrome OS utilizes a messaging system called Mojo IPC (Inter-Process Communication). This system enables processes to communicate asynchronously, meaning they can send messages to each other without having to wait for an immediate response. ● Mojo IPC is designed to be fast and secure. It facilitates efficient communication between processes while maintaining strict security boundaries to prevent unauthorized access or interference.
  • 18. Key features of Mojo IPC include: ● Message Queuing: Messages sent between processes are queued up for delivery, allowing processes to continue executing without waiting for a response. ● Pipelining: Mojo IPC supports pipelining, where multiple messages can be sent in parallel without blocking each other, further enhancing communication efficiency. ● Error Handling: The system includes robust error handling mechanisms to deal with communication failures or unexpected issues gracefully.
  • 19. Smart Process Scheduling: ● Chrome OS employs a smart process scheduling algorithm to optimize the utilization of system resources and enhance user experience. This scheduling algorithm takes into account various factors such as: ● Available Resources: It considers the current availability of CPU, memory, and other system resources to allocate them efficiently among running processes. ● User Activity: The algorithm monitors user interactions and prioritizes processes accordingly to ensure responsiveness, especially for foreground applications. ● Power Management: Chrome OS also considers power management goals, such as minimizing battery consumption, by intelligently scheduling processes to optimize energy efficiency.
  • 20. Chrome OS uses a supervisor process called "init" to manage all of the other processes on the system. DEADLOCKS IN CHROMEOS: • Tab synchronization: In Chrome OS, tabs can synchronize their state across multiple devices. This synchronization can lead to deadlocks if one tab is waiting for a resource that is locked by another tab on a different device. • GPU resource contention: Chrome OS uses the GPU for tasks such as hardware acceleration and video playback. If multiple processes are competing for GPU resources, it can lead to deadlocks and system instability.
  • 21. ● PREVENTION OF DEADLOCKS IN CHROMEOS:  Thread prioritization: Chrome OS assigns different priorities to different threads based on their importance, allowing critical threads to execute first and reducing the chances of deadlocks.  Graceful shutdown: When a process is terminated, Chrome OS ensures that all resources used by the process are released in a controlled and orderly manner, reducing the risk of deadlocks caused by resource conflicts.
  • 22. CHROME OS SCHEDULING ● Chrome OS scheduling refers to the process by which the Chrome operating system manages and prioritizes tasks and processes running on a device
  • 23. SCHEDULING ALGORITHM • Chrome OS uses a Preemptive priority-based scheduling algorithm • Processes with higher priority levels are given preferential treatment • Operating system assigns priority levels based on importance and resource requirements
  • 24. CGROUPS • Chrome OS uses cgroups to group related processes together • Cgroups help manage resource allocation and prevent monopolization of system resources
  • 25. EXAMPLE OF PREEMPTIVE PRIORITY BASED SCHEDULING