SlideShare ist ein Scribd-Unternehmen logo
1 von 9
Report:
Chromium OS Architecture
Presented to:
DR.Eng. Ahmed Lotfy
BY Student:
Amr Abd El Latief Abd El Al
Mohamed Refaat
Mohamed Reda Mohamed
Track: EWD (Enterprise web Development Java)
Introduction
ChromiumOperatingSystemisanopensource developmentversionof Google’s Chrome OSbasedonLinux
kernel and its targetsthe userswhichspendmostof theirtime onthe internet. ThisReportwilloverview the
operatingsystemarchitecture,anditsorganizedintothree sections,inthe firstsectionwe will review Linux
kernel Architecture,inthe secondsectionwe will talkaboutthe FirmWare ,andFinallyinthe Last sectionwe will
illustrate the ApplicationLayerof ChromiumOS.
Fig.1: Chromium Operating System Layers [3]
Chromium OS consists of three major components:
ď‚· Linux Kernel
ď‚· Firmware
ď‚· The Chromium-based browser and the window manager
1.System-level software (Linuxkernel)
Chrome OS is an operating system based on the Linux kernel.
1.1. Kernel:
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.
Fig.2.Linux kernel in main memory [1]
1.2. Subsystems of the Linux kernel
System call interface
Is a layer between user-space and kernel, Perform function calls
from user space to kernel such as create new process, exec, stop
process(kill, exit) and communicate between them.
Process management
Is focused on execution of processes. Process represent an
individual virtualization of processor (thread code, data, stack,
CPU registers), is the need to share the CPU between the active
processes. The kernel implements a scheduling algorithm that
operates in constant time. There is an algorithm is Preemptive
scheduling only user processes are preemptive, in addition to
time quantum expiration, execution of processes in user mode
would be interrupted if higher priority entered and also can
executed with kernel mode but not all sections of kernel code
can be preemptive. Kernel uses default- scheduler Known as
sched-other but also kernel contains two scheduler’s first-in-first-
out and round-robin .
Memory management
This memory management scheme uses 4KB buffers as its base, but then allocates structures
from within, keeping track of which pages are full, partially used, and empty. This allows the
scheme to dynamically grow and shrink based on the needs of the greater system.
Supporting multiple users of memory, there are times when the available memory can be
exhausted. For this reason, pages can be moved out of memory and onto the disk. This process
is called swapping because the pages are swapped from memory onto the hard disk.
Virtual file system
Is an interesting aspect of the Linux kernel because it provides a switching layer between the
system calls interface (SCI) and the file systems supported by the kernel.
Network stack
Follows a layered architecture modeled after the protocols themselves. Recall that the
Internet Protocol (IP) is the core network layer protocol that sits below the transport protocol.
Above TCP is the sockets layer, which is invoked through the SCI.
The sockets layer is the standard API to the networking provides a user interface to a variety
of networking protocols. From raw frame access to IP protocol data units (PDUs) and up to
Fig.3:Linux kernel Layer [1]
TCP and the User Datagram Protocol (UDP), the sockets layer provides a standardized way
to manage connections and move data between endpoints
Device driver:
The most of the source code in the Linux kernel exists in device drivers that make a particular
hardware device usable.
2. Firmware:
The firmware plays a key part to make 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.
We are also adding support for system recovery into the firmware itself. We can avoid the complexity
that's in most PC firmware because we don't have to be backwards compatible with a large amount of
legacy hardware. For example, we don't have to probe for floppy drives.
Fig. 4 Chromium OS Firmware Overview [2]
Our firmware will implement the following functionality:
2.1 Firmware Boot and Recovery
• The layout and structure of firmware for Chromium OS is designed for security,
recovery and development.
• Chromium OS wants to support developers as well. Developers are provided with a
means of running alternate software. In the alternate boot paths, the user is notified
that they are not running a boot path provided as part of Chromium OS.
• The boot and recovery procedures outlined will be implemented and required for all
Chromium OS platforms regardless of architecture (ARM/Intel/etc...).
• All firmware will contain a recovery code path, which will restore the machine to its
Original Chromium OS state. This recovery code path will be initiated either when
Any chain in the boot path is not verified or when a user manually triggers recovery
Mode, likely via an explicit recovery button on the device.
2.2Verified Boot (For Security)
•The Chromium OS team is implementing a verified boot solution that strives to
ensure that users feel secure when logging into a Chromium OS device. Verified
boot starts with a read-only portion of firmware, which only executes the next chunk
of boot code after verification.
•Verified boot strives to ensure that all executed code comes from the Chromium OS
source tree, rather than from an attacker or corruption.
•erified boot is focused on stopping the opportunistic attacker. While verified boot is
not expected to detect every attack, the goal is to be a significant deterrent which will
be improved upon iteratively.
•Verification during boot is performed on-the-fly to avoid delaying system start up. It
uses stored cryptographic hashes and may be compatible with any trusted kernel.
Verified Boot should provide a mechanism that aids the user in detecting when their
system is in need of recovery due to boot path changes. In particular, it should meet
these requirements:
•Detect non-volatile memory changes from expected state (rw firmware).
•Detect file system changes relevant to system boot (kernel, init, modules, fs
metadata, and policies).
•Support functionality upgrades in the field.
This feature is not expected to provide 100% detection of attacks. Instead, it is meant to raise
the attack bar significantly and in a way that can be improved upon iteratively .It is important to
note that restraining the boot path to only Chromium-project-supplied code is not a goal. The
focus is to ensure that when code is run that is not provided for or maintained by upstream, that
the user will have the option to immediately reset the device to a known-good state. Along these
lines, there is no dependence on remote attestation or other external authorization. Users will
always own their computers.
3. Application Layer
The last layer of the operating System (Chromium OS) is the App Layer; it’s very simple
Such that it doesn’t take too time to reach the Browser. It takes Around 5 sec from
turning on your PC until Reaching the Browser (Note that the fastest windows PC take
around 45 sec). This Layer mainly Consists of Window manager –Which is the most
important Component in this Layer- , Weskit for HTML -5++, JavaScript Engine Version
8, And Finally Flash.
In this Section we will try to go through those four Components.
Fig.5:The Application Layer in the Chromium OS [4]
3.1 The Application Layer Components:
ď‚· Window Manager
ď‚· Webkit
ď‚· Javascript engine
3.1.1 First Window Manager:
the window manager is a piece of software responsible for managing the different windows that
aoppear 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. [4]
Fig.4: the window manager is a layer between X server and Applications [6]
3.1.2 webkit :
webkit is a Layout engine for rendering webpages in web browser , its used in many browsers as
Apple Safari ,and chromium based web browsers as Opera and Google chrome. Its written in
C++ and it consists of Mainly two components a Layout engine the basic component which
responsible for combining content and formatting options, and a parser for Markups of the HTML
3.1.3 JavaScript Engine V8:
In the web Applications JavaScript is one of the most popular Languages ,its Cross platform i.e.
has support on Most Famous Operating Systems Like Mac os ,Windows ,and Linux,Besides that
its usage in most website as a Client server Language besides HTML. So Google made an open
source project called V8 to make an new fast engine for Java Script using C++. [3]
A java Script engine is a program act lice compilers it translate code written in java script to
machine code specific for the operating system and/or the Hardware , the V8 engine/compiler
comes with three new features which make it the fastest amonge other competitors from other
companies like JScript (in Internet Explorer), SpiderMonkey (in Firefox), and JavaScriptCore (in
Safari).those concepts are :
ď‚· Fast Property Access
Java Script is a dynamic language so its objects are dynamically change ,which make the
engine adds to the main memory in a non-ordered form (which mean that the same
object could be in many locations ) the engines are using a dictionary-like data
structure as storage for object properties - each property access requires a
dynamic lookup to resolve the property's location in memory, which takes some
time to reach the location. Google V8 team used other technique to try to speed up the
process of memory ret rival , it used a technique called Hidden classes which yields a
better performance.
ď‚· Dynamic Machine Code Generation
V8 engine compiles the Source code Directly into Machine code there are no
intermediate or Byte code.
ď‚· Efficient Garbage Collection
V8 use Garbage Collection technique to Remove the objects which are not used even
more , which make the memory more Compressed, Hence Faster to reach the Target
location.[3]
3.2 On the Top of the Chromium there are four types of apps:
1 – Websites : any website
2 – Extensions : small size Software which enhance the capabilities of Chrome
Browser ,and they are written in html ,javascript. have little to no user interface. For
example, the image to the right shows the icon that provides the UI for the Google Mail
Checker extension. [2]
Fig 6: Extension example [4]
3 – Chrome Applications: they are applications written for Chrome web browser and it
usually are Server side and on Chrome store.
4 – Themes: are many graphical designs for google chrome/chromium web browser.
References:
[1] http://www.ibm.com/developerworks/library/l-linux-kernel
[2] https://www.chromium.org/chromium-os/chromiumos-design-docs/firmware-boot-and-recovery
[3] https://.chromium.org/chromium-os/chromiumos-design-docs/software-architecture#TOC-Chromium-and-the-window-manager
[4] https://developers.google.com/v8/
[5] Ungerleider LG, Mishkin M (1982). "Two Cortical Visual Systems". In Ingle DJ, Goodale MA and Mansfield RJW. Analysis of Visual
Behavior. Boston: MIT Press. pp. 549–586.
[6] http://www.linuxplanet.com/linuxplanet/tutorials/981/1

Weitere ähnliche Inhalte

Was ist angesagt?

Google chrome operating system.ppt
Google chrome operating system.pptGoogle chrome operating system.ppt
Google chrome operating system.pptbhubohara
 
Google chrome os
Google chrome osGoogle chrome os
Google chrome osakoyena
 
Google chrome os
Google chrome osGoogle chrome os
Google chrome osNeethu Dasan
 
An Introduction to Google Chrome OS..........
An Introduction to Google Chrome OS..........An Introduction to Google Chrome OS..........
An Introduction to Google Chrome OS..........VAST TRICHUR
 
Google chrome os chromebook
Google chrome os chromebookGoogle chrome os chromebook
Google chrome os chromebookPrashant Raj
 
Introduction to chrome os
Introduction to chrome osIntroduction to chrome os
Introduction to chrome osIndrajit Gohokar
 
Google chrome
Google chromeGoogle chrome
Google chromeNayana_Bingi
 
Study of Chromium OS
Study of Chromium OSStudy of Chromium OS
Study of Chromium OSWilliam Lee
 
Google Chrome os
Google Chrome osGoogle Chrome os
Google Chrome osKendry Daihana
 
Google chrome os
Google chrome osGoogle chrome os
Google chrome osJorGe GuilLen
 
windows operating system and its advancements
windows operating system and its advancementswindows operating system and its advancements
windows operating system and its advancementsparthrai2
 
Google chrome os (perfect version)
Google chrome os (perfect version)Google chrome os (perfect version)
Google chrome os (perfect version)En Tj Pj
 
Chrome OS
Chrome OSChrome OS
Chrome OSTakegava
 
Operating system Tutorial.
Operating system Tutorial.Operating system Tutorial.
Operating system Tutorial.Deepak Prasad India
 
Presentation on Android
Presentation on AndroidPresentation on Android
Presentation on AndroidNausad Ahamed
 

Was ist angesagt? (20)

Google chrome operating system.ppt
Google chrome operating system.pptGoogle chrome operating system.ppt
Google chrome operating system.ppt
 
Google chrome os
Google chrome osGoogle chrome os
Google chrome os
 
Google chrome os
Google chrome osGoogle chrome os
Google chrome os
 
An Introduction to Google Chrome OS..........
An Introduction to Google Chrome OS..........An Introduction to Google Chrome OS..........
An Introduction to Google Chrome OS..........
 
Google chrome os chromebook
Google chrome os chromebookGoogle chrome os chromebook
Google chrome os chromebook
 
Introduction to chrome os
Introduction to chrome osIntroduction to chrome os
Introduction to chrome os
 
Google chrome
Google chromeGoogle chrome
Google chrome
 
Study of Chromium OS
Study of Chromium OSStudy of Chromium OS
Study of Chromium OS
 
Google chrome OS
Google chrome OSGoogle chrome OS
Google chrome OS
 
Google Chrome os
Google Chrome osGoogle Chrome os
Google Chrome os
 
Google chrome os
Google chrome osGoogle chrome os
Google chrome os
 
windows operating system and its advancements
windows operating system and its advancementswindows operating system and its advancements
windows operating system and its advancements
 
Google chrome os (perfect version)
Google chrome os (perfect version)Google chrome os (perfect version)
Google chrome os (perfect version)
 
Google Chrome OS
Google Chrome OSGoogle Chrome OS
Google Chrome OS
 
Chrome OS
Chrome OSChrome OS
Chrome OS
 
Presentation windows operating system
Presentation  windows operating systemPresentation  windows operating system
Presentation windows operating system
 
Operating system Tutorial.
Operating system Tutorial.Operating system Tutorial.
Operating system Tutorial.
 
Chrome os
Chrome osChrome os
Chrome os
 
Presentation on Android
Presentation on AndroidPresentation on Android
Presentation on Android
 
Chrome OS
Chrome OSChrome OS
Chrome OS
 

Andere mochten auch

Browsers on Android (Webkit,chromium)
Browsers on Android (Webkit,chromium)Browsers on Android (Webkit,chromium)
Browsers on Android (Webkit,chromium)Bin Chen
 
Android chromium web view
Android chromium web viewAndroid chromium web view
Android chromium web view朋 王
 
venta casas bello
venta casas belloventa casas bello
venta casas bellomint59ronald
 
Tipos de aprendizaje
Tipos de aprendizajeTipos de aprendizaje
Tipos de aprendizajeFabii Coxtinica
 
20130618 Jornada Sistema Nacional de Cualificaciones
20130618 Jornada Sistema Nacional de Cualificaciones20130618 Jornada Sistema Nacional de Cualificaciones
20130618 Jornada Sistema Nacional de CualificacionesFIAB
 
Controlli non distruttivi per strutture e componenti in metallo
Controlli non distruttivi per strutture e componenti in metallo Controlli non distruttivi per strutture e componenti in metallo
Controlli non distruttivi per strutture e componenti in metallo Vetorix Engineering Srl
 
Ppt of kanish class 6 a
Ppt of kanish class 6 aPpt of kanish class 6 a
Ppt of kanish class 6 aNivedita Kumari
 
PresentaciĂłn1
PresentaciĂłn1PresentaciĂłn1
PresentaciĂłn1Santos Dc
 
Safetydance skydive jersey
Safetydance skydive jerseySafetydance skydive jersey
Safetydance skydive jerseyjeksports
 
Nuevo documento de texto (2)
Nuevo documento de texto (2)Nuevo documento de texto (2)
Nuevo documento de texto (2)Ivan Paredes
 
Native Advertising, Content Marketing & Co. @ Marketing on Tour 2015
Native Advertising, Content Marketing & Co. @ Marketing on Tour 2015Native Advertising, Content Marketing & Co. @ Marketing on Tour 2015
Native Advertising, Content Marketing & Co. @ Marketing on Tour 2015Christian Paul Stobbe
 
Typologie des structures agraires et parcellaires fossilisés sous couvert for...
Typologie des structures agraires et parcellaires fossilisés sous couvert for...Typologie des structures agraires et parcellaires fossilisés sous couvert for...
Typologie des structures agraires et parcellaires fossilisés sous couvert for...Nicolas Bernigaud
 

Andere mochten auch (14)

Browsers on Android (Webkit,chromium)
Browsers on Android (Webkit,chromium)Browsers on Android (Webkit,chromium)
Browsers on Android (Webkit,chromium)
 
Android chromium web view
Android chromium web viewAndroid chromium web view
Android chromium web view
 
venta casas bello
venta casas belloventa casas bello
venta casas bello
 
Mugiyanti
MugiyantiMugiyanti
Mugiyanti
 
Tipos de aprendizaje
Tipos de aprendizajeTipos de aprendizaje
Tipos de aprendizaje
 
20130618 Jornada Sistema Nacional de Cualificaciones
20130618 Jornada Sistema Nacional de Cualificaciones20130618 Jornada Sistema Nacional de Cualificaciones
20130618 Jornada Sistema Nacional de Cualificaciones
 
Controlli non distruttivi per strutture e componenti in metallo
Controlli non distruttivi per strutture e componenti in metallo Controlli non distruttivi per strutture e componenti in metallo
Controlli non distruttivi per strutture e componenti in metallo
 
Ppt of kanish class 6 a
Ppt of kanish class 6 aPpt of kanish class 6 a
Ppt of kanish class 6 a
 
PresentaciĂłn1
PresentaciĂłn1PresentaciĂłn1
PresentaciĂłn1
 
Safetydance skydive jersey
Safetydance skydive jerseySafetydance skydive jersey
Safetydance skydive jersey
 
Nuevo documento de texto (2)
Nuevo documento de texto (2)Nuevo documento de texto (2)
Nuevo documento de texto (2)
 
Native Advertising, Content Marketing & Co. @ Marketing on Tour 2015
Native Advertising, Content Marketing & Co. @ Marketing on Tour 2015Native Advertising, Content Marketing & Co. @ Marketing on Tour 2015
Native Advertising, Content Marketing & Co. @ Marketing on Tour 2015
 
Compost and Soil Prep
Compost and Soil PrepCompost and Soil Prep
Compost and Soil Prep
 
Typologie des structures agraires et parcellaires fossilisés sous couvert for...
Typologie des structures agraires et parcellaires fossilisés sous couvert for...Typologie des structures agraires et parcellaires fossilisés sous couvert for...
Typologie des structures agraires et parcellaires fossilisés sous couvert for...
 

Ă„hnlich wie Chromium os architecture report

Reformat PPT.pptx
Reformat PPT.pptxReformat PPT.pptx
Reformat PPT.pptxLINDYLGERAL
 
Lec 01_Linux System Administration (1).pptx
Lec 01_Linux System Administration (1).pptxLec 01_Linux System Administration (1).pptx
Lec 01_Linux System Administration (1).pptxShabanaShafi3
 
18587936 squid-proxy-configuration-guide - [the-xp.blogspot.com]
18587936 squid-proxy-configuration-guide - [the-xp.blogspot.com]18587936 squid-proxy-configuration-guide - [the-xp.blogspot.com]
18587936 squid-proxy-configuration-guide - [the-xp.blogspot.com]Krisman Tarigan
 
Online lg prodect
Online lg prodectOnline lg prodect
Online lg prodectYesu Raj
 
Windows Architecture Explained by Stacksol
Windows Architecture Explained by StacksolWindows Architecture Explained by Stacksol
Windows Architecture Explained by StacksolStacksol
 
Unit 6 Operating System TEIT Savitribai Phule Pune University by Tushar B Kute
Unit 6 Operating System TEIT Savitribai Phule Pune University by Tushar B KuteUnit 6 Operating System TEIT Savitribai Phule Pune University by Tushar B Kute
Unit 6 Operating System TEIT Savitribai Phule Pune University by Tushar B KuteTushar B Kute
 
M5-1.pptx m5 document for 18 ec751 students of engineering
M5-1.pptx m5 document for 18 ec751 students of engineeringM5-1.pptx m5 document for 18 ec751 students of engineering
M5-1.pptx m5 document for 18 ec751 students of engineering4SF20CS057LESTONREGO
 
Internship msc cs
Internship msc csInternship msc cs
Internship msc csPooja Bhojwani
 
Factors Affecting the System Safety || Linux
Factors Affecting the System Safety || LinuxFactors Affecting the System Safety || Linux
Factors Affecting the System Safety || LinuxZain Abid
 
Solid-State diskA solid-state drive also known as a solid-state di.pdf
Solid-State diskA solid-state drive also known as a solid-state di.pdfSolid-State diskA solid-state drive also known as a solid-state di.pdf
Solid-State diskA solid-state drive also known as a solid-state di.pdfsaahinmanpam
 
Device Drivers
Device DriversDevice Drivers
Device DriversKushal Modi
 
Lesson 2
Lesson 2Lesson 2
Lesson 2Sandra Ahn
 
System structure
System structureSystem structure
System structureKalyani Patil
 
SP1_Battlecard
SP1_BattlecardSP1_Battlecard
SP1_BattlecardLarry Yurdin
 

Ă„hnlich wie Chromium os architecture report (20)

Reformat PPT.pptx
Reformat PPT.pptxReformat PPT.pptx
Reformat PPT.pptx
 
Lec 01_Linux System Administration (1).pptx
Lec 01_Linux System Administration (1).pptxLec 01_Linux System Administration (1).pptx
Lec 01_Linux System Administration (1).pptx
 
18587936 squid-proxy-configuration-guide - [the-xp.blogspot.com]
18587936 squid-proxy-configuration-guide - [the-xp.blogspot.com]18587936 squid-proxy-configuration-guide - [the-xp.blogspot.com]
18587936 squid-proxy-configuration-guide - [the-xp.blogspot.com]
 
Online lg prodect
Online lg prodectOnline lg prodect
Online lg prodect
 
Windows Architecture Explained by Stacksol
Windows Architecture Explained by StacksolWindows Architecture Explained by Stacksol
Windows Architecture Explained by Stacksol
 
Unit 6 Operating System TEIT Savitribai Phule Pune University by Tushar B Kute
Unit 6 Operating System TEIT Savitribai Phule Pune University by Tushar B KuteUnit 6 Operating System TEIT Savitribai Phule Pune University by Tushar B Kute
Unit 6 Operating System TEIT Savitribai Phule Pune University by Tushar B Kute
 
M5-1.pptx m5 document for 18 ec751 students of engineering
M5-1.pptx m5 document for 18 ec751 students of engineeringM5-1.pptx m5 document for 18 ec751 students of engineering
M5-1.pptx m5 document for 18 ec751 students of engineering
 
Internship msc cs
Internship msc csInternship msc cs
Internship msc cs
 
Linux-Internals-and-Networking
Linux-Internals-and-NetworkingLinux-Internals-and-Networking
Linux-Internals-and-Networking
 
Factors Affecting the System Safety || Linux
Factors Affecting the System Safety || LinuxFactors Affecting the System Safety || Linux
Factors Affecting the System Safety || Linux
 
Solid-State diskA solid-state drive also known as a solid-state di.pdf
Solid-State diskA solid-state drive also known as a solid-state di.pdfSolid-State diskA solid-state drive also known as a solid-state di.pdf
Solid-State diskA solid-state drive also known as a solid-state di.pdf
 
BIOS AND OS
BIOS AND OSBIOS AND OS
BIOS AND OS
 
Io sy.stemppt
Io sy.stempptIo sy.stemppt
Io sy.stemppt
 
Device Drivers
Device DriversDevice Drivers
Device Drivers
 
Lesson 2
Lesson 2Lesson 2
Lesson 2
 
System structure
System structureSystem structure
System structure
 
os.ppt
os.pptos.ppt
os.ppt
 
SP1_Battlecard
SP1_BattlecardSP1_Battlecard
SP1_Battlecard
 
Handout2o
Handout2oHandout2o
Handout2o
 
Documentation
DocumentationDocumentation
Documentation
 

Mehr von Amr Abd El Latief

I feel presentation [autosaved]
I feel presentation [autosaved]I feel presentation [autosaved]
I feel presentation [autosaved]Amr Abd El Latief
 
AngularJs advanced Topics
AngularJs advanced TopicsAngularJs advanced Topics
AngularJs advanced TopicsAmr Abd El Latief
 
Data mining concepts and work
Data mining concepts and workData mining concepts and work
Data mining concepts and workAmr Abd El Latief
 
Test vector compression
Test vector compressionTest vector compression
Test vector compressionAmr Abd El Latief
 
Designing energy efficient lte
Designing energy efficient lteDesigning energy efficient lte
Designing energy efficient lteAmr Abd El Latief
 
Stock market analysis using ga and neural network
Stock market analysis using ga and neural networkStock market analysis using ga and neural network
Stock market analysis using ga and neural networkAmr Abd El Latief
 
Marketing plane of cadbry bupply kids
Marketing plane of cadbry bupply kidsMarketing plane of cadbry bupply kids
Marketing plane of cadbry bupply kidsAmr Abd El Latief
 
Test vector compression in Digital Testing
Test vector compression in Digital Testing Test vector compression in Digital Testing
Test vector compression in Digital Testing Amr Abd El Latief
 

Mehr von Amr Abd El Latief (12)

master-journey.pptx
master-journey.pptxmaster-journey.pptx
master-journey.pptx
 
Micro frontend
Micro frontendMicro frontend
Micro frontend
 
I feel presentation [autosaved]
I feel presentation [autosaved]I feel presentation [autosaved]
I feel presentation [autosaved]
 
Design p atterns
Design p atternsDesign p atterns
Design p atterns
 
AngularJs advanced Topics
AngularJs advanced TopicsAngularJs advanced Topics
AngularJs advanced Topics
 
Angular js slides
Angular js slidesAngular js slides
Angular js slides
 
Data mining concepts and work
Data mining concepts and workData mining concepts and work
Data mining concepts and work
 
Test vector compression
Test vector compressionTest vector compression
Test vector compression
 
Designing energy efficient lte
Designing energy efficient lteDesigning energy efficient lte
Designing energy efficient lte
 
Stock market analysis using ga and neural network
Stock market analysis using ga and neural networkStock market analysis using ga and neural network
Stock market analysis using ga and neural network
 
Marketing plane of cadbry bupply kids
Marketing plane of cadbry bupply kidsMarketing plane of cadbry bupply kids
Marketing plane of cadbry bupply kids
 
Test vector compression in Digital Testing
Test vector compression in Digital Testing Test vector compression in Digital Testing
Test vector compression in Digital Testing
 

KĂĽrzlich hochgeladen

Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfWilly Marroquin (WillyDevNET)
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfVishalKumarJha10
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...Jittipong Loespradit
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...SelfMade bd
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionOnePlan Solutions
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdfPearlKirahMaeRagusta1
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verifiedDelhi Call girls
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...kalichargn70th171
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfayushiqss
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 

KĂĽrzlich hochgeladen (20)

Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 

Chromium os architecture report

  • 1. Report: Chromium OS Architecture Presented to: DR.Eng. Ahmed Lotfy BY Student: Amr Abd El Latief Abd El Al Mohamed Refaat Mohamed Reda Mohamed Track: EWD (Enterprise web Development Java)
  • 2. Introduction ChromiumOperatingSystemisanopensource developmentversionof Google’s Chrome OSbasedonLinux kernel and its targetsthe userswhichspendmostof theirtime onthe internet. ThisReportwilloverview the operatingsystemarchitecture,anditsorganizedintothree sections,inthe firstsectionwe will review Linux kernel Architecture,inthe secondsectionwe will talkaboutthe FirmWare ,andFinallyinthe Last sectionwe will illustrate the ApplicationLayerof ChromiumOS. Fig.1: Chromium Operating System Layers [3] Chromium OS consists of three major components: ď‚· Linux Kernel ď‚· Firmware ď‚· The Chromium-based browser and the window manager 1.System-level software (Linuxkernel) Chrome OS is an operating system based on the Linux kernel. 1.1. Kernel: 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. Fig.2.Linux kernel in main memory [1]
  • 3. 1.2. Subsystems of the Linux kernel System call interface Is a layer between user-space and kernel, Perform function calls from user space to kernel such as create new process, exec, stop process(kill, exit) and communicate between them. Process management Is focused on execution of processes. Process represent an individual virtualization of processor (thread code, data, stack, CPU registers), is the need to share the CPU between the active processes. The kernel implements a scheduling algorithm that operates in constant time. There is an algorithm is Preemptive scheduling only user processes are preemptive, in addition to time quantum expiration, execution of processes in user mode would be interrupted if higher priority entered and also can executed with kernel mode but not all sections of kernel code can be preemptive. Kernel uses default- scheduler Known as sched-other but also kernel contains two scheduler’s first-in-first- out and round-robin . Memory management This memory management scheme uses 4KB buffers as its base, but then allocates structures from within, keeping track of which pages are full, partially used, and empty. This allows the scheme to dynamically grow and shrink based on the needs of the greater system. Supporting multiple users of memory, there are times when the available memory can be exhausted. For this reason, pages can be moved out of memory and onto the disk. This process is called swapping because the pages are swapped from memory onto the hard disk. Virtual file system Is an interesting aspect of the Linux kernel because it provides a switching layer between the system calls interface (SCI) and the file systems supported by the kernel. Network stack Follows a layered architecture modeled after the protocols themselves. Recall that the Internet Protocol (IP) is the core network layer protocol that sits below the transport protocol. Above TCP is the sockets layer, which is invoked through the SCI. The sockets layer is the standard API to the networking provides a user interface to a variety of networking protocols. From raw frame access to IP protocol data units (PDUs) and up to Fig.3:Linux kernel Layer [1]
  • 4. TCP and the User Datagram Protocol (UDP), the sockets layer provides a standardized way to manage connections and move data between endpoints Device driver: The most of the source code in the Linux kernel exists in device drivers that make a particular hardware device usable. 2. Firmware: The firmware plays a key part to make 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. We are also adding support for system recovery into the firmware itself. We can avoid the complexity that's in most PC firmware because we don't have to be backwards compatible with a large amount of legacy hardware. For example, we don't have to probe for floppy drives. Fig. 4 Chromium OS Firmware Overview [2] Our firmware will implement the following functionality: 2.1 Firmware Boot and Recovery • The layout and structure of firmware for Chromium OS is designed for security, recovery and development. • Chromium OS wants to support developers as well. Developers are provided with a means of running alternate software. In the alternate boot paths, the user is notified that they are not running a boot path provided as part of Chromium OS. • The boot and recovery procedures outlined will be implemented and required for all Chromium OS platforms regardless of architecture (ARM/Intel/etc...). • All firmware will contain a recovery code path, which will restore the machine to its Original Chromium OS state. This recovery code path will be initiated either when
  • 5. Any chain in the boot path is not verified or when a user manually triggers recovery Mode, likely via an explicit recovery button on the device. 2.2Verified Boot (For Security) •The Chromium OS team is implementing a verified boot solution that strives to ensure that users feel secure when logging into a Chromium OS device. Verified boot starts with a read-only portion of firmware, which only executes the next chunk of boot code after verification. •Verified boot strives to ensure that all executed code comes from the Chromium OS source tree, rather than from an attacker or corruption. •erified boot is focused on stopping the opportunistic attacker. While verified boot is not expected to detect every attack, the goal is to be a significant deterrent which will be improved upon iteratively. •Verification during boot is performed on-the-fly to avoid delaying system start up. It uses stored cryptographic hashes and may be compatible with any trusted kernel. Verified Boot should provide a mechanism that aids the user in detecting when their system is in need of recovery due to boot path changes. In particular, it should meet these requirements: •Detect non-volatile memory changes from expected state (rw firmware). •Detect file system changes relevant to system boot (kernel, init, modules, fs metadata, and policies). •Support functionality upgrades in the field. This feature is not expected to provide 100% detection of attacks. Instead, it is meant to raise the attack bar significantly and in a way that can be improved upon iteratively .It is important to note that restraining the boot path to only Chromium-project-supplied code is not a goal. The focus is to ensure that when code is run that is not provided for or maintained by upstream, that the user will have the option to immediately reset the device to a known-good state. Along these lines, there is no dependence on remote attestation or other external authorization. Users will always own their computers.
  • 6. 3. Application Layer The last layer of the operating System (Chromium OS) is the App Layer; it’s very simple Such that it doesn’t take too time to reach the Browser. It takes Around 5 sec from turning on your PC until Reaching the Browser (Note that the fastest windows PC take around 45 sec). This Layer mainly Consists of Window manager –Which is the most important Component in this Layer- , Weskit for HTML -5++, JavaScript Engine Version 8, And Finally Flash. In this Section we will try to go through those four Components. Fig.5:The Application Layer in the Chromium OS [4] 3.1 The Application Layer Components: ď‚· Window Manager ď‚· Webkit ď‚· Javascript engine 3.1.1 First Window Manager: the window manager is a piece of software responsible for managing the different windows that aoppear 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. [4]
  • 7. Fig.4: the window manager is a layer between X server and Applications [6] 3.1.2 webkit : webkit is a Layout engine for rendering webpages in web browser , its used in many browsers as Apple Safari ,and chromium based web browsers as Opera and Google chrome. Its written in C++ and it consists of Mainly two components a Layout engine the basic component which responsible for combining content and formatting options, and a parser for Markups of the HTML 3.1.3 JavaScript Engine V8: In the web Applications JavaScript is one of the most popular Languages ,its Cross platform i.e. has support on Most Famous Operating Systems Like Mac os ,Windows ,and Linux,Besides that its usage in most website as a Client server Language besides HTML. So Google made an open source project called V8 to make an new fast engine for Java Script using C++. [3] A java Script engine is a program act lice compilers it translate code written in java script to machine code specific for the operating system and/or the Hardware , the V8 engine/compiler comes with three new features which make it the fastest amonge other competitors from other companies like JScript (in Internet Explorer), SpiderMonkey (in Firefox), and JavaScriptCore (in Safari).those concepts are : ď‚· Fast Property Access Java Script is a dynamic language so its objects are dynamically change ,which make the engine adds to the main memory in a non-ordered form (which mean that the same object could be in many locations ) the engines are using a dictionary-like data structure as storage for object properties - each property access requires a
  • 8. dynamic lookup to resolve the property's location in memory, which takes some time to reach the location. Google V8 team used other technique to try to speed up the process of memory ret rival , it used a technique called Hidden classes which yields a better performance. ď‚· Dynamic Machine Code Generation V8 engine compiles the Source code Directly into Machine code there are no intermediate or Byte code. ď‚· Efficient Garbage Collection V8 use Garbage Collection technique to Remove the objects which are not used even more , which make the memory more Compressed, Hence Faster to reach the Target location.[3] 3.2 On the Top of the Chromium there are four types of apps: 1 – Websites : any website 2 – Extensions : small size Software which enhance the capabilities of Chrome Browser ,and they are written in html ,javascript. have little to no user interface. For example, the image to the right shows the icon that provides the UI for the Google Mail Checker extension. [2] Fig 6: Extension example [4] 3 – Chrome Applications: they are applications written for Chrome web browser and it usually are Server side and on Chrome store. 4 – Themes: are many graphical designs for google chrome/chromium web browser.
  • 9. References: [1] http://www.ibm.com/developerworks/library/l-linux-kernel [2] https://www.chromium.org/chromium-os/chromiumos-design-docs/firmware-boot-and-recovery [3] https://.chromium.org/chromium-os/chromiumos-design-docs/software-architecture#TOC-Chromium-and-the-window-manager [4] https://developers.google.com/v8/ [5] Ungerleider LG, Mishkin M (1982). "Two Cortical Visual Systems". In Ingle DJ, Goodale MA and Mansfield RJW. Analysis of Visual Behavior. Boston: MIT Press. pp. 549–586. [6] http://www.linuxplanet.com/linuxplanet/tutorials/981/1