SlideShare a Scribd company logo
1 of 20
About microkernel
   arhitecture
    Bogdan Știrbăț




                     Page 1
Ce este un kernel?

Kernelul este o componentă software
deasupra hardware-ului.
Roluri:
 - este un intermediar între utilizatori și
mașina fizică;
 - oferă un enviroment în care utilizatorii
pot rula eficent și sigur programe;
 ...




                                          Page 2
Short Unix history

Prima versiune de Unix a apărut în 1969,
scrisă în assembler de Ken Thomson.
La început, kernelurile erau simple.
A început să crească după ce au apărut
tot mai multe dispozitive hardware, dar
mai ales după tranzicția de la 16 la 32 de
biți




                                         Page 3
Generalități kernel

- are, de obicei, câteva milioane de linii
cod;
-rulează în kernel space, adică un nivel de
privilegiu deasupra aplicațiilor obișnuite
(care rulează în user space)
-înglobează multe servicii de sistem:
process/user management, networking




                                          Page 4
Probleme

-codul din kernel space poate face absolut
orice cu sistemul; un bug/exploit aici
poate fi fatal => TCB (Trusted Code Base)
e destul de mare;
  consecință: Doqu s-a răspândit pe
Windows, folosindu-se de un bug în
parsarea de fonturi [1]
-greu de întreținut (după o modificare,
trebuie recompilat tot kernelul);
-greu de extins;




                                         Page 5
O soluție: microkerneluri

Filosifia: lăsăm în kernel doar ce e absolut
necesar, restul mutăm în kernel;
Rămân: interprocess communication, CPU
Scheduling, basic memory management




                                           Page 6
Alte proprietăți

-foarte mici, comparativ cu kernelurile
monolitice: 10000 linii de cod vs.
milioane;
-componentele scoase din kernel sunt
implementate ca servicii în user-space;
aceste servicii comunică prin transmitere
de mesaje;
-astfel se împrumută puțin din OOP:
sistemul devine împărțit în componente,
ce comunică între ele pentru a îndeplini
un task;




                                        Page 7
Avantaje

-securitatea: dacă serviciul de networking
are un buffer overflow, exploatarea sa e
mai puțin periculoasă în user-space decât
în kernel-space;
-availability:     poate      exista    un
“reincarnation server” care să dea ping la
celelalte; care nu răspund sunt restartate




                                         Page 8
Dezavantaje

-lipsa de performanță, cauzată de
   1) nevoia de a copia des date din user-
space în kernel-space;
   2) schimbări dese de context;

- sunt multe componente care se așteaptă
una pe cealaltă, riscul de a avea deadlock
e mare;




                                         Page 9
Soluții

Linus Torvalds, într-un debate cu Andrew
Tanenbaum [12] “The real issue, and it's
really fundamental, is the issue of sharing
address spaces.”

De aici, 2 soluții:
- creșterea microkernelui
- micșorarea acestuia




                                          Page 10
Generația 1

- prima generație a urmat prima cale;
-microkernelul a devenit hibrid, câteodată
mai mari ca dimensiuni decât unul
obișnuit;
-ex.: Windows NT




                                         Page 11
Generația a 2-a

-a urmat a 2-a cale: microkernelul a fost
micșorat și mai mult;
-kernelul e atât de mic, încât încape în L1
cache;
-operațiile sunt foarte optimizate;
-memory management nu mai e în user-
space, ci se oferă mecanisme de gestiune
(ex.: L4 are 3 primitive, map, grant,
flush)
-exemple: L4, QNX (Quick Unix), seL4
-problemele de performanță au fost
rezolvate;




                                          Page 12
Microkernel și VM

-microkernelurile   sunt    împărțite    în
module independente;
-următorul pas logic era apariția VM-urile
-ca și microkernelurile, resursele HW ale
unei mașini se împart în mai multe
contexte de execuție;




                                          Page 13
Microkernel și VM
   (cont)
Prin definiție,
  - un microkernel este un sistem minimal
peste care se pot construi alte sisteme;
    - o mașină virtuală este un sistem ce
permite rularea unor alte sisteme reale
deasupra;

Rezultă că orice microkernel poate fi o
mașină virtuală. Unii cercetătoti afirmă că
“un microkernel e soluția corectă de a
implementa o mașină virtuală”.

În prezent, granița dintre microkerneluri
și mașini virtuale se micșorează.



                                          Page 14
Microkernel și VM
     (cont)
Cerințe    ale  sistemelor   de   operare
embedded:
 - eficență
 - securitate;
 - small code base;

O soluție bună [2]:




                                        Page 15
Avantaje

-securitatea, dată de:
  1) dimensiunea mică a microkernelului;
   2) mașinile virtuale sunt independente,
nu comunică între ele;

-eficența, atât a sistemului propriu-zis,
cât și datorate microkernelului mic ca
dimensiune;

-ușor extensibil,   folosești   doar   ce-ai
nevoie.




                                           Page 16
Concluzii

-microkernelurile au apărut datorită
complexității kernelurilor monolitice;
-dacă prima generație avea probleme de
performanță, cea de-a doua a rezolvat
aceste probleme;
-granița dintre microkerneluri și virtual
machine monitors este din ce în ce mai
mică;
-oferă mecanisme, și nu servicii
-în ziua de azi sunt relevante în
dispozitivele    embedded,      construind
mașini      virtuale    deasupra       unui
microkernel.




                                          Page 17
Bibliografie

1)http://www.zdnet.com/blog/security/
microsoft-issues-temporary-fix-it-for-
duqu-zero-day/9764
2)http://www.rtcmagazine.com/articles
/vew/100958
3)http://www.cs.cornell.edu/home/ulfar
/ukernel/ukernel.html
4)http://microkerneldude.wordpress.co
m/2012/02/04/automotive-the-next-
frontier-for-virtualization/
5)http://www.ok-
labs.com/blog/entry/microkernels-vs-
hypervisors/
6)
http://duartes.org/gustavo/blog/post/c
pu-rings-privilege-and-protection

                                         Page 18
Bibliografie(cont)

6)http://duartes.org/gustavo/blog/post
/cpu-rings-privilege-and-protection
7)http://linuxkernel51.blogspot.ro/2011
/02/difference-between-microkernel-
and.html
8)http://www.cse.unsw.edu.au/~cs9242
/12/lectures/05-ukinternals.pdf
9)http://www.ssrg.nicta.com.au/publica
tions/papers/Heiser_08.pdf
10)http://www.ssrg.nicta.com.au/public
ations/papers/Heiser_05.pdf




                                          Page 19
Bibliografie(cont)

                      11)http://www.ok-
labs.com/whitepapers/sample/secure-
embedded-systems-need-microkernels
12)http://en.wikipedia.org/wiki/Tanenb
aum%E2%80%93Torvalds_debate
13)http://www.ganssle.com/rants/micr
okernalvsmonolithic.htm
14)Operating System Concepts, Abraham
Silberschatz, Peter Baer Galvin




                                      Page 20

More Related Content

Viewers also liked

SCIENCE LESSON WITH. Polish recipe
SCIENCE LESSON WITH. Polish recipeSCIENCE LESSON WITH. Polish recipe
SCIENCE LESSON WITH. Polish recipelucillamancini72
 
Question 4. In what ways did you use digital technologies in your constructio...
Question 4. In what ways did you use digital technologies in your constructio...Question 4. In what ways did you use digital technologies in your constructio...
Question 4. In what ways did you use digital technologies in your constructio...Jane Toner
 
Recipe Radar Apps for Good
Recipe Radar Apps for GoodRecipe Radar Apps for Good
Recipe Radar Apps for GoodHåkan Arnlund
 
Question 4. What new digital technologies did you use in the construction, re...
Question 4. What new digital technologies did you use in the construction, re...Question 4. What new digital technologies did you use in the construction, re...
Question 4. What new digital technologies did you use in the construction, re...Jane Toner
 
My music magazine photographs power point slideshare
My music magazine photographs power point slideshareMy music magazine photographs power point slideshare
My music magazine photographs power point slideshareJane Toner
 
Movie magazine research ppt.
Movie magazine research ppt.Movie magazine research ppt.
Movie magazine research ppt.Jane Toner
 
Drama Movie Poster Conventions
Drama Movie Poster ConventionsDrama Movie Poster Conventions
Drama Movie Poster ConventionsJane Toner
 
Settle — food pre-ordering and table booking app
Settle — food pre-ordering and table booking appSettle — food pre-ordering and table booking app
Settle — food pre-ordering and table booking appAnna Polishchuk
 
Trajetória dos afro-americanos
Trajetória dos afro-americanos Trajetória dos afro-americanos
Trajetória dos afro-americanos ddpolitike
 
Iniciativas e projetos DGIDC/ERTE
Iniciativas e projetos DGIDC/ERTEIniciativas e projetos DGIDC/ERTE
Iniciativas e projetos DGIDC/ERTEertedgidc
 
Receitas - Carnes
Receitas - CarnesReceitas - Carnes
Receitas - CarnesXana Abreu
 
Huambos Fiestas Fundacionales
Huambos Fiestas FundacionalesHuambos Fiestas Fundacionales
Huambos Fiestas Fundacionalesogavidiab
 
Maria anisorac
Maria anisoracMaria anisorac
Maria anisoracanisoracm
 
Encuesta superfinanciera aplicacion niif
Encuesta superfinanciera aplicacion niifEncuesta superfinanciera aplicacion niif
Encuesta superfinanciera aplicacion niifLuis Olaya
 

Viewers also liked (19)

SCIENCE LESSON WITH. Polish recipe
SCIENCE LESSON WITH. Polish recipeSCIENCE LESSON WITH. Polish recipe
SCIENCE LESSON WITH. Polish recipe
 
The water cycle
The water cycleThe water cycle
The water cycle
 
Question 4. In what ways did you use digital technologies in your constructio...
Question 4. In what ways did you use digital technologies in your constructio...Question 4. In what ways did you use digital technologies in your constructio...
Question 4. In what ways did you use digital technologies in your constructio...
 
Recipe Radar Apps for Good
Recipe Radar Apps for GoodRecipe Radar Apps for Good
Recipe Radar Apps for Good
 
Question 4. What new digital technologies did you use in the construction, re...
Question 4. What new digital technologies did you use in the construction, re...Question 4. What new digital technologies did you use in the construction, re...
Question 4. What new digital technologies did you use in the construction, re...
 
My music magazine photographs power point slideshare
My music magazine photographs power point slideshareMy music magazine photographs power point slideshare
My music magazine photographs power point slideshare
 
Movie magazine research ppt.
Movie magazine research ppt.Movie magazine research ppt.
Movie magazine research ppt.
 
Drama Movie Poster Conventions
Drama Movie Poster ConventionsDrama Movie Poster Conventions
Drama Movie Poster Conventions
 
Settle — food pre-ordering and table booking app
Settle — food pre-ordering and table booking appSettle — food pre-ordering and table booking app
Settle — food pre-ordering and table booking app
 
Apresentação Front In Londrina 2011
Apresentação Front In Londrina 2011Apresentação Front In Londrina 2011
Apresentação Front In Londrina 2011
 
Windows 8 apps
Windows 8 appsWindows 8 apps
Windows 8 apps
 
Trajetória dos afro-americanos
Trajetória dos afro-americanos Trajetória dos afro-americanos
Trajetória dos afro-americanos
 
Terminal 6
Terminal 6Terminal 6
Terminal 6
 
Iniciativas e projetos DGIDC/ERTE
Iniciativas e projetos DGIDC/ERTEIniciativas e projetos DGIDC/ERTE
Iniciativas e projetos DGIDC/ERTE
 
O palhaço-tristoleto
O palhaço-tristoletoO palhaço-tristoleto
O palhaço-tristoleto
 
Receitas - Carnes
Receitas - CarnesReceitas - Carnes
Receitas - Carnes
 
Huambos Fiestas Fundacionales
Huambos Fiestas FundacionalesHuambos Fiestas Fundacionales
Huambos Fiestas Fundacionales
 
Maria anisorac
Maria anisoracMaria anisorac
Maria anisorac
 
Encuesta superfinanciera aplicacion niif
Encuesta superfinanciera aplicacion niifEncuesta superfinanciera aplicacion niif
Encuesta superfinanciera aplicacion niif
 

Similar to Microkernels

2 Software Retele
2 Software Retele2 Software Retele
2 Software Reteleclcziprok
 
Modulul 1 it
Modulul 1   itModulul 1   it
Modulul 1 it08alesa
 
Managing large networks with snmp
Managing large networks with snmpManaging large networks with snmp
Managing large networks with snmpRazvans Victor
 
Tipuri de Retele _Alina Gheorghita _12B.pdf
Tipuri de Retele _Alina Gheorghita _12B.pdfTipuri de Retele _Alina Gheorghita _12B.pdf
Tipuri de Retele _Alina Gheorghita _12B.pdfIonelStanescu
 
Modulul 1 ecdl
Modulul 1 ecdlModulul 1 ecdl
Modulul 1 ecdlELENA NITA
 
Modulul 1 ecdl
Modulul 1 ecdlModulul 1 ecdl
Modulul 1 ecdlELENA NITA
 
arhitectura-microprocesoarelor_cursul amp profesor burileanu_44509
arhitectura-microprocesoarelor_cursul amp   profesor burileanu_44509arhitectura-microprocesoarelor_cursul amp   profesor burileanu_44509
arhitectura-microprocesoarelor_cursul amp profesor burileanu_44509Robin Cruise Jr.
 
An2 derivat.ro arhitectura-microprocesoarelor_cursul amp profesor burileanu...
An2 derivat.ro arhitectura-microprocesoarelor_cursul amp   profesor burileanu...An2 derivat.ro arhitectura-microprocesoarelor_cursul amp   profesor burileanu...
An2 derivat.ro arhitectura-microprocesoarelor_cursul amp profesor burileanu...Robin Cruise Jr.
 
Impactul linux asupra unui imm felicia izabela sterpu ap1
Impactul linux asupra unui imm    felicia izabela sterpu ap1Impactul linux asupra unui imm    felicia izabela sterpu ap1
Impactul linux asupra unui imm felicia izabela sterpu ap1silviu_cojocaru
 
Retele de calculatoare
Retele de calculatoareRetele de calculatoare
Retele de calculatoareViorel Gurdiș
 
Andrew S. Tanenbaum Retele de calculatoare
Andrew S. Tanenbaum Retele de calculatoareAndrew S. Tanenbaum Retele de calculatoare
Andrew S. Tanenbaum Retele de calculatoareSergiu Ciudin
 
Retele de calculatoare_editia_a4a
Retele de calculatoare_editia_a4aRetele de calculatoare_editia_a4a
Retele de calculatoare_editia_a4aRazvans Victor
 
Web Applications - Security and Scalability Checklist - DefCamp 2012
Web Applications - Security and Scalability Checklist - DefCamp 2012Web Applications - Security and Scalability Checklist - DefCamp 2012
Web Applications - Security and Scalability Checklist - DefCamp 2012DefCamp
 

Similar to Microkernels (20)

Curs2
Curs2Curs2
Curs2
 
It modullul 1 15oct
It modullul 1 15octIt modullul 1 15oct
It modullul 1 15oct
 
2 Software Retele
2 Software Retele2 Software Retele
2 Software Retele
 
Modulul 1 it
Modulul 1   itModulul 1   it
Modulul 1 it
 
Managing large networks with snmp
Managing large networks with snmpManaging large networks with snmp
Managing large networks with snmp
 
Curs calcul
Curs calculCurs calcul
Curs calcul
 
Tipuri de Retele _Alina Gheorghita _12B.pdf
Tipuri de Retele _Alina Gheorghita _12B.pdfTipuri de Retele _Alina Gheorghita _12B.pdf
Tipuri de Retele _Alina Gheorghita _12B.pdf
 
Modulul 1 ecdl
Modulul 1 ecdlModulul 1 ecdl
Modulul 1 ecdl
 
Modulul 1 ecdl
Modulul 1 ecdlModulul 1 ecdl
Modulul 1 ecdl
 
Teoria modul 1
Teoria modul 1Teoria modul 1
Teoria modul 1
 
Snmp
SnmpSnmp
Snmp
 
arhitectura-microprocesoarelor_cursul amp profesor burileanu_44509
arhitectura-microprocesoarelor_cursul amp   profesor burileanu_44509arhitectura-microprocesoarelor_cursul amp   profesor burileanu_44509
arhitectura-microprocesoarelor_cursul amp profesor burileanu_44509
 
An2 derivat.ro arhitectura-microprocesoarelor_cursul amp profesor burileanu...
An2 derivat.ro arhitectura-microprocesoarelor_cursul amp   profesor burileanu...An2 derivat.ro arhitectura-microprocesoarelor_cursul amp   profesor burileanu...
An2 derivat.ro arhitectura-microprocesoarelor_cursul amp profesor burileanu...
 
Impactul linux asupra unui imm felicia izabela sterpu ap1
Impactul linux asupra unui imm    felicia izabela sterpu ap1Impactul linux asupra unui imm    felicia izabela sterpu ap1
Impactul linux asupra unui imm felicia izabela sterpu ap1
 
Retele de calculatoare
Retele de calculatoareRetele de calculatoare
Retele de calculatoare
 
Tcpip net ro
Tcpip net roTcpip net ro
Tcpip net ro
 
Sisteme de operare
Sisteme de operareSisteme de operare
Sisteme de operare
 
Andrew S. Tanenbaum Retele de calculatoare
Andrew S. Tanenbaum Retele de calculatoareAndrew S. Tanenbaum Retele de calculatoare
Andrew S. Tanenbaum Retele de calculatoare
 
Retele de calculatoare_editia_a4a
Retele de calculatoare_editia_a4aRetele de calculatoare_editia_a4a
Retele de calculatoare_editia_a4a
 
Web Applications - Security and Scalability Checklist - DefCamp 2012
Web Applications - Security and Scalability Checklist - DefCamp 2012Web Applications - Security and Scalability Checklist - DefCamp 2012
Web Applications - Security and Scalability Checklist - DefCamp 2012
 

Microkernels