SlideShare a Scribd company logo
1 of 25
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

Similar to complete case study on the chrome os ppt

Operating system (os)
Operating system (os)Operating system (os)
Operating system (os)bbp2067
 
Operating system (os)
Operating system (os)Operating system (os)
Operating system (os)bbp2067
 
Operating Systems & Applications
Operating Systems & ApplicationsOperating Systems & Applications
Operating Systems & ApplicationsMaulen Bale
 
OS introduction.pptx
OS introduction.pptxOS introduction.pptx
OS introduction.pptxDivyaKS18
 
Operating system
Operating systemOperating system
Operating systemSonika koul
 
Introduction to operating system
Introduction to operating systemIntroduction to operating system
Introduction to operating systemAkshay Ithape
 
4 Module - Operating Systems Configuration and Use by Mark John Lado
4 Module - Operating Systems Configuration and Use by Mark John Lado4 Module - Operating Systems Configuration and Use by Mark John Lado
4 Module - Operating Systems Configuration and Use by Mark John LadoMark John Lado, MIT
 
Operating systems
Operating systemsOperating systems
Operating systemsoswaldm80
 
Google Chrome Operating System
Google Chrome Operating SystemGoogle Chrome Operating System
Google Chrome Operating SystemDebashish Mitra
 
OS - Operating System
OS - Operating System OS - Operating System
OS - Operating System MaqdamYasir
 
Operating system 2
Operating system 2Operating system 2
Operating system 2matsapit
 
System components terminals and fast user-file system-networking
System components terminals and fast user-file system-networkingSystem components terminals and fast user-file system-networking
System components terminals and fast user-file system-networkingPriyaKarnan3
 

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

Chrome os
Chrome osChrome os
Chrome os
 
Operating system
Operating systemOperating system
Operating system
 
Operating system (os)
Operating system (os)Operating system (os)
Operating system (os)
 
Operating system (os)
Operating system (os)Operating system (os)
Operating system (os)
 
OS Lec2.pptx
OS Lec2.pptxOS Lec2.pptx
OS Lec2.pptx
 
Operating Systems & Applications
Operating Systems & ApplicationsOperating Systems & Applications
Operating Systems & Applications
 
1. Introduction to OS.ppt
1. Introduction to OS.ppt1. Introduction to OS.ppt
1. Introduction to OS.ppt
 
OS introduction.pptx
OS introduction.pptxOS introduction.pptx
OS introduction.pptx
 
Introduction to chrome os
Introduction to chrome osIntroduction to chrome os
Introduction to chrome os
 
Unit 1 q&a
Unit  1 q&aUnit  1 q&a
Unit 1 q&a
 
Operating system
Operating systemOperating system
Operating system
 
LEC 1.pptx
LEC 1.pptxLEC 1.pptx
LEC 1.pptx
 
Introduction to operating system
Introduction to operating systemIntroduction to operating system
Introduction to operating system
 
4 Module - Operating Systems Configuration and Use by Mark John Lado
4 Module - Operating Systems Configuration and Use by Mark John Lado4 Module - Operating Systems Configuration and Use by Mark John Lado
4 Module - Operating Systems Configuration and Use by Mark John Lado
 
Operating systems
Operating systemsOperating systems
Operating systems
 
Google Chrome Operating System
Google Chrome Operating SystemGoogle Chrome Operating System
Google Chrome Operating System
 
OS.pptx
OS.pptxOS.pptx
OS.pptx
 
OS - Operating System
OS - Operating System OS - Operating System
OS - Operating System
 
Operating system 2
Operating system 2Operating system 2
Operating system 2
 
System components terminals and fast user-file system-networking
System components terminals and fast user-file system-networkingSystem components terminals and fast user-file system-networking
System components terminals and fast user-file system-networking
 

Recently uploaded

WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetHyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetEnjoy Anytime
 

Recently uploaded (20)

WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetHyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
 

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