Você está na página 1de 23

c  


Origem: Wikipédia, a enciclopédia livre
Ir para: navegação, pesquisa

Um kernel conecta o software de aplicação para o hardware de um computador.

Em computação, o    é o componente central do computador a maioria dos


sistemas operacionais; é uma ponte entre aplicativos e o processamento de dados real
feito a nível de hardware. Responsabilidades do kernel incluem gerenciamento de
recursos do sistema (a comunicação entre componentes dehardware e software ).[1]
Geralmente como um componente básico de um sistema operacional, um kernel pode
fornecer o nível mais baixo camada de abstração para os recursos (especialmente
processadores e dispositivos i/O) que software de aplicativo deve controlar a
desempenhar a sua função. Ele normalmente faz estas instalações disponíveis para
processos de aplicativos através de mecanismos de comunicação entre processos e
chamadas do sistema.

Tarefas do sistema operacional são feitas de modo diferente por diferentes núcleos,
dependendo do seu design e implementação. Enquanto núcleos monolíticos executa
todo o código do sistema operacional no mesmo espaço de endereçamento para
aumentar o desempenho do sistema, micronúcleos executar a maioria dos serviços do
sistema operacional no espaço de usuário como servidores, com o objetivo de melhorar
a sustentabilidade e a modularidade do sistema operacional.[2] Um leque de
possibilidades existe entre estes dois extremos.

 
[esconder]

| 1 Visão geral
| 2 Instalações básicas do kernel
?| 2. 1 Gerenciamento de processos
?| 2. 2 Gestão de memória
?| 2. 3 Gestão de dispositivo
?| 2. 4 Chamadas do sistema
| 3 Decisões de design do kernel
?| 3. 1 Problemas de kernel suportam para proteção
å| 3.1.1 Tolerância a falhas
å| 3.1.2 Proteção baseada em hardware ou proteção baseada em
linguagem
?| 3. 2 Cooperação processo
?| Gerenciamento de dispositivos de i/Odo3. 3.
| 4 Abordagens de design de todo o kernel
?| 4. 1 Núcleos monolíticos
?| 4. 2 Micronúcleos
?| 4. 3 Núcleos monolíticos vs micronúcleos.
å| 4.3.1 Performances
?| 4. 4 Núcleos híbridos
?| 4. 5 Nanonúcleos
?| 4. 6 Exonúcleos
?| 4. 7. Nonkernels
| 5 História do desenvolvimento do kernel
?| 5. 1 Primeiros kernels de sistema operacional
?| 5. 2 Sistemas operativos de tempo compartilhado
?| 5. 3 Amiga
?| 5. 4 Unix
?| 5. 5 Mac OS
?| 5. 6 Microsoft Windows
?| 5,7 Desenvolvimento de micronúcleos
| 6 Ver também
| 7 Notas
| § Referências
| Ú Bibliografia
| 10 Ligações externas

ð    

Uma visão típica de uma arquitetura de computador como uma série de camadas de
abstração: hardware, firmware assembler, kernel, sistema operacional e aplicativos
(Veja também Organização estruturada de computador, por Andrew s. Tanenbaum)
w i i  
l j 
lit i lti i
l 
t
i
i t it  i
l i t i  t   
t  t i i it  i
i
t t
it  

lit
i 
l

i
tl i it
 t   i t  
t
  

 i l  
l t
t it il
t 

  
ílii t il
t t !itt
 
l ti it    t 
it
  
t ;" 
ti li i
tl
t  
t 
itiiliili  iil
t 

#

t  ji
il
t   kernel  i i
l
tt 
it  i
l it  núcleo core$%&'  i
i  

t
  
t    t
il it  i
l( 
t
t  
t coretti  i)ii
ilit
t   l 
ii  t   )i
)i
* l 

(i i     +t 


i
i i  
l    
i    
l ,i i
i ili -  ii   )
i   
l
 
l
t tit
t 
 t
t 
t
.por exemplo t it li ti 
 li iti   
l  ii
tl  /
tii  

l
t 0li   
l
l
t 
 l  t 


  t i
íl t ;"    
processo ocioso

1
 li
t   
l
i i lií it
 ,  w i  
tlit  i
lili 
 i
 
i
  
l  

tl  t/
ii lt t
 il
t ! 2i3  
l 

   3  


i t  
  t  t/
4i3i
l +
i
t )i. l 

   2i  
)it2
 jit,i
 
 
    )i 
* l  
   
  íl2-l 
 
t l
  i
 
)i 
  ili0
lt
t5
i t 

 
 li
t i
iií il
,
i 
 t/

6 
l,l
ti2 
    , i 
íl$7
  . 0  
i  
t     i

i3 t 

tt 
il l 
t l  
il i
t  
   i ti 
   t .  
#t 0%'

ð       
jti i
il  
l,
i     t iti
t  , t  $( l
t    
it
:
| 6
iC
tl 
t #tti 
tlit
 t  
2llexecução executr ,
l  
l

 
ili  iil 
t it 
 ,  l        
.  i,l
t  t
 , 30
| 1  t )iM)i3
 i
t
  ,( l
t   it
t
)i
   ,Mit3 2i  , 
  8)i it3i,i
 i)i  
t ti
íl  
l
2l  ii)i
    ti
 3
 
 i i
t
i
íl
| †ii iti #
t/í./w0
t
 t  ti
 t l   i i i  i t  
* l l 
i li ti li3 i/ i iti  i . 
 i iti 
  i i  /i
 /
il90 
 t  

i
t  i iti 
.tii 
ttí  
t 
 li ti 
  i
  
tl il
t  i iti 0

 t - 
 2i ,
i   i
i  í
i 
  . 
 0  
i  t tili3 i 
     
t  í
i $

:
lt,l
t 
 t  i

i3  
i  
t
  ."!C comunicação entre processos0

6 
l il
t   i
tit  
il,

    t    i
 ili t    
 
t  l 
 l,i "!Citi  
     
 i  i

;i
l
t 
* l    ,   t  
3 li it ti
tl

ð   
   
  

Der arti o principal: gestão de processo (computação)

ti
il 
liti  li ti  i2-l  
    t /6  i
it)i 
li ti   $$.!ti
t    li ti  , 
   i
<
i 0+
i
t    
lt
t 
i
t i
t
 / t )i$=

! tli ti  


l
l
t
i, 


t  li ti  , i 
t  )i,  li ti 

)i.tl3i,i
  
0 
i,il   ,
 ti
 l l
t   , i
i i
   $
(* l ltit  3 2i il  
*   

  t ilt

t
 t il   
* 
2i   
 t ii 
t 3 t
ilt

t( l
t  
*   it  t
ilt

ti,l 
* C!6i
tl.

t
t it  
  
     tilt5
ltit i
,0

#itltitti   
l2  ,ti
t /it      t i
tl 2 
2i   t   
  t ilt

t  
l
l, it ,

t ti
l  t2
  t 
,i  it t 2  l, it  l i  itil,

  ti iilt  t   
l,l
tt 
 
  
i 
i " 
 i    
i  

t  ."!C0i
ii ,
 )i til  
 

,  i
t  t .j t 

t0

t it.ti l


t t 
 
 t
t0 
 
 ltit ti 
     t 
i
t tl3i  ili
   
l l 
 t   #i  
 i   
l
t
 t li it 
i  
t    8

t  >i
ti, ?i
 /M  wt
t  ltit
ti ,i
ti       t 
 iti
  carece de fontes

it  i
lt    tlti 
t .wM! 
(
-6
i M 9 0(  t i
t , 
 t i
t  6 
ltlit

i -
t
t i,
ii l   ,
 i
i
tt  )i, ilt

t" 
l
ti,
ii  
 
 
i i

i3 .  i
l 0,
ti

 i
  t
t ii      t 

ð   
 

 
lt   lt )i ititi  
  ,
)ili,Mit3 ii  
i 

t itl 
l
tl 
 ,i
 / ,
t 
#

t itlit  
l3ti
 
 íi 
  t 
  
 itl# 
 itl 
i
ti
t  )i   
ti
 
 .itl0 i
t)i  t   
 
 
 "t it  ,  t  l
 *
i . t
   
l0 t
  i ili ti  i

  t $

#it it 
 itl  , i-  
 
t 
)i i
i  
 il 

t itlit
 it  i
l t 3

t     
i
i í,i 3
   
t2i ti
 
)i
i
il.RM0C  lt it  i
i iti ,
i)i  it iii 
ti
íi†
 
 , i 
 t 
)iRM C!6i
li3  
l
i 
t    
l
   
t* l 
)ii
ti i .
 2i 0tití-l    li it l 
 ,  , ,i  t   
t 
 #t
,l
t
 i   ,i
  


#

t itltit i tiiti)i
2ti l 
    
l. 
* l 0 
t  li ti . 2i 0 li ti 
  iti l 
  
 )i 
l it
 ili ti 

ii  
l  #tti 

tl )i

tiiit 
ti 
li ,i
il
tiit  l,

* l i. l i
,li0
t  t ,


ð   
     

! t
*ti    i   ii 
 t  
t   
t l l  
ltii iti ! 
l  t 2i l, 
tl li ti  it i 
  
l ii
i
 li it  ií 

2l 
i
 
,/il$

6 
l
tliti iti i
íi(tlit 

 i
t . l it  
  
li2
 it   /i
íl0 
i,l 2i .tíi !C
i
ti, it
   jt   l0 t tl 
it  i
lt   .
l
t  l,
l90

#itl,
l9 +
i i iti li3lii3

i
t
t  / ti  "
t
 


tii .!C"0 B
t wil6
il.6wB0 t t
i iti i
tl  
t   i 

C   ,
i
t i iti it  w- ii t)i i 
tt  i
t  ti i,
  
l t       

lt 
  "/ iti i ii 
t
i iti tl, t )il lMit i t
t i
tit  jt it,
i
t i iti    
l,
 jt    
 llt
5
i
tt t 

   
i
t
i C!6 il
t 
   ,

i,
ii ticitação necessários

ð     

!l
tli3tl *til    3  i 
 
 i l  
l" il
t  i
t   
l 
i i  ili t   !"  3 
 

ll i
$

t   


  
li 
l  
lw 
i l
t )it2 i íl  2i   

lit
t  i ii l ,
t l   
  l, iili :

| 6
  t/il i
t #tt  t2i
íl

i i  /  t
t it  
| 6
   t 6 t  
  il
3
 l  
llit
)i  
ll l

 i    †
    t t 

 3i i i
 l lti
 
i l   "  t /   /
lt
t 
| 6
 i
t  it il#tt
i 
 t / il  
 tiitt 

.
tl
t  &0"
t  it i i
 
 
t l    & 

t
t l,
it
 i
i!C3 l
 tii
íi
| 6
 il 
)i6li ti 3 ,


* i  
  i lt   
i i
tl i 2)i  
lii 
i i 
t

t li it

ð  
    
ð          

6
i i t
t

  
l  i l 
 
 t 
tl .t l5
il 0  t
t li i  .,
0
#t i t ,l
t
   l
titi
,i    t
iti
 
i,
 
l
38ji tt i2i 
 t $

 
i   líti   il 
* l   lii   
2i  iti    :t2ti .li 
t  il 0 i
5i 
.li t   0;ti  )-t  ;    
i
íi  t lti3. j 1

i
,$%$& 0;l  /
 t li
,,;l i 
i t  
 líti i
l it i

ð  
 

6i*til 
ílt l5
il it )i  
i
íi  
iil,i $'#  
2i  ,  
*
i  t  i t
titl   , t

,ti
t t!  , i,
l-i
t
i
  i
l  
o mesmo se aplica à segurança, onde é necessário evitar que processos acessem
informações sem ser concedida permissão.

Os dois principais hardware abordagens[]1§ para proteção (de informações sensíveis) são
domínios hierárquicos de proteção (também chamado de arquiteturas de anel ,
arquiteturas de segmento ou modo supervisor),[]1Ú e endereçamento baseado em
capacidade.[20]

Anéis de privilégio, como em x§6, são uma implementação comum de domínios


hierárquicos de proteção usados em muitos sistemas comerciais para ter algum nível de
tolerância a falhas.

Domínios hierárquicos de proteção são muito menos flexíveis, como é o caso com cada
kernel com uma estrutura hierárquica assumida como critério de design global.[1] No
caso de proteção não é possível atribuir privilégios diferentes para processos que são do
mesmo nível privilegiado e, portanto, não é possível satisfazer Denning quatro
princípios para falhas tolerância[]15[]16 (particularmente o princípio de privilégio
mínimo). Domínios hierárquicos de proteção também têm uma desvantagem de grande
desempenho, desde interação entre diferentes níveis de proteção, quando um processo
tem que manipular uma estrutura de dados em 'modo usuário' e 'modo supervisor',
sempre requer mensagem copiar (transmissão por valor).[21] Um kernel com base em
recursos, no entanto, é mais flexível em atribuir privilégios, pode satisfazer aos
princípios de Denning falhas tolerância,[]22 e normalmente não sofre de problemas de
desempenho de cópia por valor.

Ambas as abordagens normalmente exigem algum suporte de hardware ou firmware


para ser operável e eficiente. O suporte de hardware para proteção hierárquica
domínios[]23 normalmente é o de modos de CPU. Uma maneira simple e eficiente para
fornecer suporte a hardware de recursos é delegar a MMU a responsabilidade de
verificação de direitos de acesso para cada acesso de memória, um mecanismo chamado
endereçamento baseado em capacidade.[22] Arquiteturas de computador mais comerciais
não têm suporte a MMU para capacidades. Uma abordagem alternativa é simular
capacidades usando domínios hierárquicos comumente suportados; nesta abordagem,
cada objeto protegido deve residir em um espaço de endereçamento que o aplicativo não
tem acesso a; o kernel também mantém uma lista de recursos em tal memória. Quando
um aplicativo precisa acessar um objeto protegido por um recurso, ele executa uma
chamada de sistema e o kernel executa o acesso para ele. O custo de desempenho de
comutação de espaço de endereço limita a praticabilidade desta abordagem em sistemas
com interações complexas entre objetos, mas ele é usado em sistemas operacionais
ti jt 
     @
i 
   
 ti
t==% ,

 
i  t 
  i/
 t  i
i  il 
íiil . l 
il
   i 
iltl2,i
 /
 t i 
i t 0   íi itili 
=&;lt t
/
   l 

t
t it l 
 t li
,,=' 

6 i i,


  
li t
t l  
íit 
 
 
i ,
 líti il
tM 
i 
,
  
l
l

tl

  i ,

íi
=== = 7$
il  

6 , i/ 


l tt l5
il . i0
 iiti,
  t
t li i   ii 
.i i

      
i  it ,i
 2i 0 l,l,

ili  il  ,
l,8   líti 
,
  il /  
ílli ti   segurança
baseada em linguagem

ltit  
i ,
 íti 
i
iiit ti 
i   líti ,


ílt  
li ti = ( í  ,
 t 
l líti ,
 il
tli ti 
i


t
t  t  
l =  

ð       

wit t   j,li l  / i


 , iti       
it   
2 ,i l,. l   2i t2
tl ,)i  
li i
t0#it
 
t t      i l 
  t  
  


t  =C    2i 
 
l 
,l
t  i,
 -  t    it
 it  i

6 ,lt
ti t li
,,#it
 t  li
,,   
l)it   )i, t

i  3i  li
,,
i2l il li
,, ,i 
  jttli íl  , i
ti3l, i2
i liit ,
='


t,
t ,i
l:

| (  2
 i 

t  lt

t
 

t   l
t3 ,


ti  ,it tl  tii3 tl
tli3 
it
 2i/it it  i
itiC t 
 lt
t
 2i it t  
li
,,   t    )i,    ,

  


t 
| ;liili†l t   jt
tli
,, ,  il
t

 t  lt  t . l 
it i2i    i0
 i,
 
/

1
t,
i
l:

| li  il


, t i
i ili3 li ii 

 l i
i i ,
til  il l 
il  t    i ilti )i, -
t 
9t 
| witti i
líl( itti i
i li ti @
t
t
 t 
  ti , # 
  
itiit t li
,,  i,
ii 
 li ti tl3 i it   l,
   



#l it  t li


,,i
lABMi   t
i
,li

ð    
 

,ij t  ti


t itl),i t i Bl 
l   i
2i 2  iiti i i
t
l
i
li    ( 
t
t t ,
,l
tli3ltt ,
i i
i 
 ,,
,
ilíl'

ð   
     

ii
* l 
i iti i/  
il 
i 
t  t 
       ll  l   ilii3  t
 t i
 

. iil 
t ,i
$ &'% 0( i C

it     
   
processos internos 

t  i iti /w   processos externos'

ð     


(tl
t   ilit t    
 i it

ii
ti jt il
t 

i
íi separação do mecanismo e políticai
t
il
t
il  i 
l
líti i  &'imecanismo  t
it  it líti i
t 

t  líti  il
    ! l   
  
i t
tti
,it  2i  i t i3 ti
   
ser concedido; uma diretiva pode ser para o servidor de autorização solicitar uma senha
e verificá-la contra uma senha criptografada armazenada em um banco de dados. Porque
o mecanismo é genérico, a política mais facilmente poderia ser alterada (por exemplo,
exigindo o uso de um token de segurança) do que se o mecanismo e política foram
integrados no mesmo módulo.

No mínimo microkernel apenas algumas políticas muito básicas estãoincluídas,[]37 e


seus mecanismos permite que o que está sendo executado sobre o kernel (a parte
restante do sistema operacional e outros aplicativos) para decidir quais as políticas a
adoptar (como gerenciamento de memóriaagendamento de processos de nível elevado,
gerenciamento de sistema de arquivos, etc.).[1][7] Em vez disso, um kernel monolítico
tende a incluir muitas políticas, restringindo, por conseguinte, o resto do sistema para
confiar neles.

Per brinch hansen apresentadas cogent argumentos em favor da separação do


mecanismo e da política.[1][7] O fracasso em cumprir adequadamente esta separação, é
uma das principais causas da falta de inovação substancial em sistemas operacionais
existentes,[]1 um problema comum em arquitetura de computadores.[]3§[3Ú][40] O projeto
monolítico é induzido pelo modo kernel / modo usuário abordagem de arquitetura
para proteção (tecnicamente chamada de domínios hierárquicos de proteção), que é
comum em sistemas comerciais convencionais.[]41 , de fato, todos os módulos que
precisam de proteção preferência, portanto, está incluído no kernel.[41] Esta ligação entre
concepção monolítica e modo privilegiado pode ser reconduzida a questão
fundamental da separação do mecanismo-política.[]1 de fato a abordagem de arquitetura
modo privilegiado derrete juntos o mecanismo de proteção com as políticas de
segurança, enquanto a abordagem alternativa importante arquitectónica,endereçamento
baseado em capacidade, distingue claramente entre os dois, líder naturalmente a um
microkernel design[]1 (veja separação de proteção e segurança).

Enquanto núcleos monolíticos todo seu código executar no mesmo endereço espaço
(espaço de núcleo) micronúcleos tente executar a maioria dos seus serviços no espaço
de usuário, com o objetivo de melhorar a facilidade de manutenção e modularidade de
codebase.[2] A maioria dos kernels não cabem exatamente em uma destas categorias,
mas sim são encontrados entre estes dois projetos. Estes são chamados núcleos híbridos.
Projetos mais exóticos como nanonúcleos e exonúcleos estão disponíveis, mas
raramente são usados em sistemas de produção. O Xen hypervisor, por exemplo, é um
exonúcleo.

Diagrama de núcleos monolíticos


ð    ! 

Der artigo principal  kernel monolítico

Em um kernel monolítico, todos os serviços do sistema operacional executados


juntamente com o segmento principal kernel, assim também residem na mesma área de
memória. Essa abordagem fornece acesso ao hardware rico e poderoso. Alguns
desenvolvedores, como desenvolvedor UNIX Ken Thompson, mantém o que é mais
fácil de implementar um kernel monolítico[]42 de micronúcleos. As principais
desvantagens de núcleos monolíticos são as dependências entre componentes do sistema
² um bug em um driver de dispositivo pode travar todo o sistema ² e o fato de que
grandes núcleos podem tornar-se muito difíceis de manter.

Na óptica do microkernel , o próprio kernel somente fornece basic funcionalidade que


permite a execução de servidores, programas separados que assumem funções do kernel
antigo, tais como drivers de dispositivos, servidores de GUI, etc.

ð  " 

Der artigo principal  Microkernel

A abordagem de microkernel consiste em definir uma simple abstração sobre o


hardware, com um conjunto de primitivas ou chamadas de sistema para implementar os
serviços mínimos OS tais como Gerenciamento de memória, multitarefae comunicação
entre processos. Outros serviços, incluindo aqueles normalmente fornecido pelo kernel,
como rede, são implementados em programas de espaço de usuário, conhecidos como
servidores. Micronúcleos são mais fáceis de manter do que núcleos monolíticos, mas o
grande número de chamadas do sistema e comutadores de contexto pode abrandar o
sistema porque eles geralmente geram mais sobrecarga de chamadas de função simples.

Um microkernel permite a implementação da parte restante do sistema operacional


como um programa de aplicação normal escrito em uma linguagem de alto nívele o uso
de sistemas operacionais diferentes sobre o mesmo kernel inalterado.[7] Também é
possível alternar dinamicamente entre sistemas operacionais e a ter mais de um ativo ao
mesmo tempo.[7]

ð    !   #


C    t  
l   i lt 
-i
t6
 i)i
t 
 )i" t
  ti
 i  it)iitl 
 t itt
t t t)iitl!3i,  
l i 
t
tli3  i 
t )i, 
 2i 
 it ií il 
 -)ii
t

i
tt 
l 
il li
 )i, 

!l $ 7 i 2ii i


i 
* l 
líti 
i 
* l  
* l 
líti  
i   lt  itl
tt  
i  it  i
lC  lt  i,
 Di
  

* l 
líti  i
i  
l it i  
t
li
t l
/t

(  2it   l  ,
t 

t 
t4

E4 l

ð  
 

(* l 
líti   jt tt    )i, 
  


t . 
* l 0 l,

 l ,
t

 2i 
t 
 it%l,

 l 
tt
tit
líti  t
ti i
t
 it %fonte fiável?   l 
líti t
ii i
tcitação necessários
t  )i  
l til  3 it"!Cil
t 

i  
l 
l
t 
,
 citação
necessários



i 
* l 
tí 

 7i
í i  
 7
 &#t ii 
ti  
ti 
* l 

li3tli
i i
i l  i
 l l    i li  
t 
i
/it     
l-    
t 
i

i  
t    
t 
ilt
5
i

tt  

(   ii
 $ %   ti   

i 
* l  iit ti :.$0li
i i
ii  
l
t abordagem .=0ti lconceitosil
t 
i 
* l .0
implementação
it ! 
,i
t 
t-t l 

tii  
li i
t i  
t2i t
tti
ti  
li t
i 
t  t  

( tti itt í


i  i2i  t l
i,
 
l
líti $ t
t,i,
ii ti

3iti
t  
ti
t
íi t . j 
 
  t
iltt F  2i FF  
i F0  i 
, )i l =$

!   $ 7 i i i 



 

jt i   i3i  ,ti 
t citação necessários
recentemente, novos micronúcleos, otimizados para desempenho, tais comoL4[]47 e
K42 tem abordado estes problemas.[verificação necessária]

A abordagem de kernel híbrido combina a velocidade e design mais simples de um


núcleo monolítico com a segurança de modularidade e execução de um microkernel.

ð    $! 



Der artigo principal  kernel hí rido

Núcleos híbridos são um compromisso entre os desenhos monolíticos e microkernel.


Isto implica executar alguns serviços (tais como a pilha de rede ou o sistema de
arquivos) no espaço do núcleo para reduzir a sobrecarga de desempenho[citação necessários]
de um microkernel tradicional, mas ainda executando o código do kernel (como drivers
de dispositivo) como servidores no espaço de usuário.

ð    

Der artigo principal


Nanokernel

Um nanokernel delega virtualmente todos os serviços ² incluindo as mais básicas, tais


como os controladores de interrupção ou o timer ² para drivers de dispositivo para
fazer o requisito de memória do kernel ainda menor do que um microkernel
tradicional.[4§]

ð    

Der artigo principal exonúcleo

Um exonúcleo é um tipo de kernel que não abstrair hardware em modelos teóricos. Em


vez dele aloca recursos de hardware físico, tais como tempo de processador, memória
páginas e blocos de disco, para diferentes programas. Um programa em execução em
um exonúcleo pode ligar a um sistema operacional de biblioteca que usa o exonúcleo
para simular as abstrações de um SO bem conhecido, ou ele pode desenvolver
abstrações específicas do aplicativo para um melhor desempenho.[4Ú]

ð     


ð      
ð       


Der artigo principal: história de sistemas operacionais

#tit
tl
 it  i
l.i  
l0
 necessário
 t t ! , i t
t ,  t 

2i
tl  t  ,t i t 
tl l t /t ti
 it  i
li i
 ii  t  t 
t $ %7i
í i 
 
&7  i
i , 
t   ,
i
t#
tl
t 
 ,ili   , 
 ,  i 
)i
t    , 
 R MC  t 
 li  l  t 

ii  
lit  i
l ,tli

jl,

 li ,it   ,l 
t i 
tit  i
i 
 
l

#$ &  RC777Mlti ,i


,w9ti
t 3iil  ii,

it

* l iit  i
ii
t
 )it  i
tí   
 %7 i  
 ,i  
l

ð  !     


 

Der artigo principal: time-sharing

( 
ti 6
i  t ti
  i 

t
 Gt 

t 
   t t 
 

il
  t li2i
6 i
ii
 li
t 

tt  iti- i
, ,
  l
* 2i  i

ti t   t  tl  
ti
 t 8)i il
t 2i
%$


 li
t itt  til  l i
 l6 2i  ti l
t
ii
 
it 
 
 li   i t it
,i
it C!6! t3 ,

t l  t 
 
i
il  jt Mlti $ &%%= tt   i
tt
li
     t :2i i tt 
l 
 tl

 3l
t
      t  
itt  til   t C!62i ti 

ttí  ;i
l
t  it
l
t  
ii)i2i  
ti i

t t    
l i t
t
 li
t it)iitl

ð  
Der artigo principal AmigaOS

O Commodore Amiga foi lançado em 1Ú§5 e foi entre os primeiros (e certamente mais
bem sucedidos) computadores domésticos a característica de um sistema operacional de
microkernel. Kernel do Amiga, exec.library, foi pequena mas capaz, proporcionando
rápido multitarefas em hardware semelhante a multitarefa cooperativa Apple Macintosh
e um sistema avançado ligação dinâmica que permitia fácil expansão.[53]

ð  % &

Der artigo principal Unix

Um diagrama da relação familiar predecessor/sucessor para Unix-like sistemas.

Durante a fase de design do Unix, os programadores decidiram modelar cada


dispositivo como um arquivode alto nível, porque eles acreditavam que o propósito da
computação foi a transformação de dados.[54] Por exemplo, impressoras eram
representadas como um arquivo em um local conhecido² quando dados foi copiados
para o arquivo, ele imprimiu. Outros sistemas, para fornecer uma funcionalidade
similar, tendiam a virtualizar dispositivos em um nível inferior ² ou seja, ambos os
arquivos de dispositivos e iria ser instâncias de algum conceito de nível inferior.
Virtualizar o sistema no nível de arquivo permitido aos usuários manipular todo o
sistema usando seus utilitários de gerenciamento de arquivo existentes e conceitos,
ilii 
 ti 
t 
i

t C  t
   
i, 6
iit , 
ili 
 i

 , 
  
it t  iti 2i 
lt  li
t
 i tCi

t )it *
i #  lt i
l i   ,

t
i
il
ti liili    ili

 li
t tili3 iti
  2i  ii l tl 
i i

   
  , i

(  l 6
i  sistema operacional
ittii l, 

 l  ,tilit2i 
3ii i    t  

l t  ,%( 6
i 
t it , 
iti
 
t  it
ti
;  
l ,  t
   
i   t   ,  ,i   ,

tilit2i   t  it 
 l i "/ 
i t ,;li   
l
 i
tit 
 
2i 

 l
,  
  l  t  tt
t  6
it   
l i  9tj2
  it 
il
tli 2l  
t
# ti
l itt   i  l 9t 
i  lti   
  i i
t ,2i 
 2i (t/  i
, l   t  lM  
i  
     i  itt i
t ti 

íltt   i t  


  i i
ti C  
 i t    6
it 
- 3i
,ti
  
)i, Ht  li  
l 6
it
i
t
 l2l%%#

t  
l t$77illi
 )i, 

t
t
it
t  
l   
6
i   Di
ti$il 
li
%&

1i 6
i 
,l
t  
* l 
líti )l 
 ,
t #l i    
l Di
ititii 
    
li
tB l9 t/ititi
  ;Bw1 
1,
l9Bw1  
Bw1(tBw1ttlt
ti 
 l 
 
ttiC 
i
 li
t  it  i
l 

i   
lli3 9 i
il
ttil it
 títi    
lDi
 ;Bw1 1,
l9Bw1  
Bw1 (tBw1
/ 
  tíi l%'

ð  "
'

Der artigo principal: História do Mac OS.

lC tl
 ii M  w$  j
t  lM i
t  
t  l! ii   l

t  M  w. w t/
it    0
 ti
it   
ii ti  it
i  i2i ltitC  t  it  i
l li
t 
-M  w ti
it 
   i i
    
l

 i 
t  citação necessáriosC
ti M  wB 
1/i
 
l íi   B(6  i i i

  M 

l 
lBw1% 

ð  "
  # 

Der artigo principal: História do Microsoft Windows.

Mi   t?i
 / il
 $ %   l
t  Mw-1 w
1i 8

i t it  i
l i
i ii ?i
 / 

ti  ?i
 / %  
ii
t  i
l.
 


i  it  i
l0#tli
 t 
ti
  li
t$ 7$ 7  li

   l

t  ?i
 / i
.tli3
     it

t =itltit0
t  
$ 7ti

   l

t  ?i
 /M
=777Mi   tt
 l ?i
 /(4 it  i
l
ti
 2i  i, -

,) i #tli
    l

t  
?i
 /(4$$ 
ti
 t 
=777  ?i
 /' 
?i
 /w=77 

l

t  ?i
 / t =77$t li
 i t 
j
t   i
t
   i
tili  
l(4   

i i % itt ?i
 /(4  
l
i 

l íi   )i 
* l 
ttti   +
i 
j
l +
i "!C 2i it t
  2i &7
i ii
  i 

t    
l  2i  
  i
t   6M 1i;/  
?i
 /
>it,

t t   2i 
?i
 /' &$t i

i
li   
l     2i 

ð    


$
 

# M 


 li 
6
iiC
,iMll
$ %$   
i
 i  ,li  
l  t i 
* l  
 li  
jti i íi ílii 
* l D.i
il
t DD

l0 i i
ti 
* l 
  
 i
tl
t '
"l
ti
  ;i !it i   3  Di
j
t 
 t   D 

t  &=&

†(Bit  i
lt l i,
i
iliti  
l

 
 li $ = t
 i it i i M 
ti
,i  jti  i,i  
l&#l i
il
t
it  it
  t/
  l      
 )ti  <
i il2i

t ltit i 
t
ti
t l5
i 

   t 
t
il 
)l

ð  % (
A Wikiversidade tem materiais sobre m   de aprendizagem
Modelos de sistemas operacionais/Kernel

| Comparação de kernels
| Compilador
| Driver de dispositivo
| Entrada/saída (e/S)
| Interrupção (IRQ) solicitação
| Memória
?| Memória de acesso aleatório
?| Memória virtual
?| Paginação, segmentação
?| Troque espaço
?| Espaço de usuário
?| Unidade de gerenciamento de memória
?| Sistema operacional no espaço único endereço
| Multitarefa
?| Processo
?| Thread
?| Agendamento
?| Time sharing
?| Alternância de contexto
?| Comunicação entre processos
| Sistema Operacional
| Trap (computação)

ð    
Para notas referentes a fontes, consulte bibliografia abaixo.

1.| š à   
 74 Wulf pp.337±345
2.| š „ Roch 2004
3.| š à   
Ú5 Liedtke
4.| š Tanenbaum 7Ú, capítulo 1
5.| š „ Deitel §2, Parlamento-66 (PAC). 3. Ú
6.| š Lorin §1 pp.161±1§6, Schroeder 77, Shaw 75 pp.245±267
7.| š à   
Brinch Hansen 70 pp.23§±241
§.| š à o nível de privilégio mais alto tem vários nomes ao longo de arquiteturas diferentes, tais
como modo de supervisor, modo de kernel, CPL0, DPL0, anel 0, etc. Consulte Ring (segurança
de computador) para obter mais informações.
Ú.| š Bona Fide OS desenvolvimento ± Tutorial de desenvolvimento do Kernel do farelo, por
Brandon Friesen
10.| š Para programação de baixo nível consulte Deitel §2, ch. 10, pp. 24Ú±26§.
11.| š Levy 1Ú§4, p. 5.
12.| š Needham, R.M., Wilkes, m. v. domínios de proteção e o gerenciamento de processos,
computador Journal, Vol. 17, n. º 2, Maio de 1Ú74, pp 117±120.
13.| š à  Silberschatz 1ÚÚ0
14.| š Tanenbaum, Andrew s. (200§). Sistemas operacionais modernos (3rd ed.). Prentice Hall. pp.
50 ² 51. ISBN 0-13-600663-Ú. ... quase todas as chamadas de sistema [são] chamadas de
programas em C, chamando um procedimento biblioteca... O procedimento de biblioteca...
executa uma instrução de ARMADILHA para alternar do modo de usuário para o modo de
kernel e iniciar a execução... 
15.| š „ Denning 1Ú76
$&| š„  w/it=77%  it :i l
t 
t l   ii   i 
.ii  0   
$'| šC 3i
 1Aproteção de memória de medição  it"
t
ti
lC



w t/#
,i
i
, tl
t + ,i Mi $'
$| šw/it=77%=&
$| š"
tlC  ti
=77=
=7| šC  tl$$
=$| š„  C

'  '=interações entre diferentes níveis de proteção exigem a
transmissão de mensagens por valor
==| šà  Di

'&
=| šw  '=
=| šwt 
#
i
1iM , M)i>itl
:
l Di
"-& !
ti 
Cll!4R =77=
=%| š&Iwil t3I+li

it it  i
l  %
=&| šC C l;A B /
.6
iit9 4 ti
0.Al $70 6li  
  !1!-$$/%.!1;0]valiação de sistemas operacionais de ] M SIGOPS¢ .0:==
G=1 ":$7$$%/8%7&'8%7'7$ tt:// tl  ,/ itti
 JiK8%7'7$IlK 
I llKIC;"1K$%$%$%$%IC;4 :#(K&$8&$8R  =77'-7$-7'
='| š„   ,li
,,,
 w
i M itt,.C 
ll
6
iit90C.C
,iMll
6
iit90 
=8| šà  D  wll9 M l  49l  j4
j;ll a
inevitabilidade do fracasso: O pressuposto falho de segurança em ambientes de computação
moderna(   C

i,
iti
 
 i
iBB" 
2,i
7E$  t $8$
=| šADtl] relevância persistente do sistema operacional Local para aplicações
globais!  ,
i
  #  l/ 77$/ 77$ tlCMw"+ !w
': l i
t,
i  "###C M!$%
7| šA

estudo de planejamento de tecnologia de segurança de computador, força aérea
eleger. Div. de sistemas, ESD-TR-73-51, de outubro de 1972.
$| šLA9 wlt3 Mi w  .t $'%0 t i
 
it t Proceedings of the IEEE6 .0:$='8E$78
1 ":$7$$7/!R C$'% tt://?it/wlt3/////!li ti
/! t ti
/
=| šA
t 
ww i A
t 
Mwit 1iA;.$0#R w:it
  tProceedings of the XDII symposium ] M em princípios de sistemas operacionais 
.%0:$'7E$8%1 ":$7$$%/$$$&
tt:// tlCM ,/ itti
 J iK$$%$$$&
| š1ij t /cooperando processos seqüenciaisMt 1#! t
l),i  #i
 

t $&%
| š!R4"1 R ti i
,9t C1C&&77
tt:// tl  ,/ itti
 JiK&''8IlKCMI llK,iIC;"1K$$$$$$$$I
C;4 :#(K=======R  =77'-7$-7'
%| šwi i
5i E
 
t 
tt:// tl  ,/ itti
 JiK8$$&'%IlKCMI llK,iIC;"1K$$$$$$$$I
C;4 :#(K=======R  =77'-7$-7'
&| šBii$ 88
'| š„  Di
'%
8| š1

i
,$!87
!| šA@,
( a imortalidade a de sistemas operacionais, ou: investigação é em sistemas
operacionais continuam a justificar?D t( t"
C tw i
> l%&! i
,
t ?   "
t
 i
l it  i
i 
"7lti 
''E8.$""$0"wB(-%7-%"8'-7=:  =%
t
t 
i
ti,  itt it
i

t ti
it  
2i 

i
ilit
tt
itiit 
7| šC 8 $ it :#  li li ti  t 
t

l
t itt /j 
tli ti 
 i
lt

t 
$| šà   8 $ it :itt

i
i t*
i   
iil,i   #ttl
 
líti l)l 

 it t t  
l it  i
lw 3i 
l)l   t
t  í
i  t,i it i

tí    l )l i


tt
íi l2i 
=| ši
t: 3 l 
tt
| š#

t itli 
tl 
 t
i,
i
t 
)ii
t

| š+ t
t4 l4

 

ti
 
, , ,l   ill9 
/4

 it
%| š„  Mtt /Rll  21/i
.  l M  wB0 FRill9
Mi tt:// ill9 ///M /=77%/7#/='/? t-i-1/i
 tlJ,K= it :

t3t tl
t  
l
líti it it i i
t
/j 
tMi 
* l    t l  t it i    
 2i "
li3
t 
í i    t i  
lt

ti
 
t     
lt  

 i     
tt lt
5
i
tt i
t 3  ,

i2l  t
t lt
li
#ti
t
  
tti, i
&| šCMti,$'
'| šà  Di  
líliEi ,l
8| šitt:9: w(

l
%| šwit  i
l M"4
* l 
%7| šC

=77$. 0 ?ili 
%$| š> Bw4A li 6
iCCM
%=| š"
t  i ,l itMlti   jC t)>i t 9 
%| šw l
D
 t 
t ,
N.C   i,0CtiC ti
,
tt://///ti,3i
 /Cti/$$
&/O? tO OitO O,t R  
=77&-7=-7%
%| š„   it6("BGwi
,l6
iw ii ti

%%| š>i
,
 6("B C  1i
%&| šDi
:
l=&:l
iN  1i? l $= t =77
%'| š#t 
i*
i
il
t
i w1l 
t 4 M,-4)i 
M,B  t it
tit it  i
l
%8| šB(6: :
l
%'| šDi
? l"1C:
 li  ?i
 /
 i
t 
&7| šCit)i?i
 /: it)i t 1 t ?i
 /
&$| šC l/ 4 .'i =77(0?i
 /' t,

t   
2i  w(/
tt:///// w(/ /wt 9/=7($/?i
 /O'O+tO6OM Ow li
,R  
=77(-7=-=8
&=| š ;i i  
lEi ,l
&| šD:E4 Di  
lílii, 
&| š>i ,lit  i
lt l†(B

ð  &'
 
| R B
ji
.=770:
l
líti Mi  
l.!1;0
tt://///t/i
Ct/C / ti$=/A 
l/7/ti lO7OR !1;
R  =77&-$7-$=
| wil t3  ;AD!t
!tB+li
.$ ))$0 onceitos de
sistema operacionalB t
M tt:i
-?l9& *&"wB(7-=7$-
%$' *-B tt:// tl  ,/ itti
 JiK *%= *IlK I llKIC;"1K
$%$%$%$%IC;4 :#(K&$8&$8
| 1itl C9M.$ +80$ +8=jma introdução aos sistemas operacionais
.iit ii0i
-?l9&'"wB(7-=7$- $%7=-=
tt:// tl  ,/ itti
 JiK' +7&IlK,iI llK,i
| 1

i
, !tj.113 $ ,'&0w wt l
tl ] M omputing
inquéritos§.0:% -E891 ":$7$$%/%&&'8%&&87"ww(7&7-777
tt:// tl  ,/ itti
 JiK%&&87IlKCMI llKIC;"1K
$%$%$%$%IC;4 :#(K&$8&$8
| 1

i
, !tj.il$9870! 
 i
itt
t JNotícias de arquitetura de computador ] M SIG]R H§.=0:E'
1 ":$7$$%/8%9%78%9%7&"ww(7$&-%9&
tt:// tl  ,/ itti
 JiK8%9%7&I llKIlKCMIC;"1K
$%$%$%$%IC;4 :#(K&$8&$8
| C

!Bi
.il$9'70 
* l itMlti ,i
,
ommunications of the ] M¢ .0:=8E=$1 ":$7$$%/&==%8&=='8"ww(
777$-7'8= tt:// tl  ,/ itti
 JiK&=='8IlKCMI llK,iI
C;"1K$$$$$$$$IC;4 :#(K=======
| C

!Bi
.$9'0Princípios do sistema operacional#
,l/ Cli:
!
ti Cll9&"wB(7-$-&'8-9
tt:// tlCM ,/ itti
 J"1K%7&%
| C

!Bi
.=77$0.!1;0] evolução dos sistemas operacionais tt://Bi
-
C


t//=77$!1;R  =77&-$7-=i
lí 
li :!Bi

C

.=77$0$ lassic operacional sistemas: de processamento em lotes para
sistemas distribuídos( P  :wi
,->l,$G&"wB(7-8'-9%$$-B
tt://Bi
-C


t//=77$!1;
| 

 Mti, Mi lC t j 


lit  wti
w Q
, A
? ltO
desempenho de sistemas baseados em ȝ-kernel  
it 
R- 
l1 iCM , tt://1 iCM ,/$7$$%/=&8998=&&&&7
R  =7$7-7&-$9CMw"+ !wit  i
iRi/ $
% 
&&E'' 3 $99'
| C   w lti ,C 
l$98$IBM System/38 suporte para
endereçamento baseado em capacidade! i
, t 8t CM"
t
ti
l
w9 i
itt t CM/"### $E8
| "
tlC  ti
.=77=0Manual do desenvolvedor de Software de arquitetura I]-32,
Dolume 1: arquitetura básica
| Di
;#C 
/C /i
! ll ?illi/l.$9'%0! líti / 
i 
 C9] M Simpósio sobre princípios de sistemas operacionais /
processo do quinto Simpósio ] M em princípios de sistemas operacionaisÚ.%0:$=E
$71 ":$7$$%/$7&'&=987&%$ tt:// tl  ,/ itti
 JiK87&%$Il
KCMI llKIC;"1K$%$%$%$%IC;4 :#(K&$8&$8
| D9 C
9M.$980Sistemas de computador baseado em capacidadesM9
 
:"
1i,itl"wB(7-9='&-==-
tt://///Cw? i
,t
/C /D9/  /i
 tl
| Dit  A 
Na construção de µ-Kernel proc. XD Simpósio ] M sobre os
princípios do sistema operacional (SOSP) 13 $99%
| Di

4   ::#l.$9'&13 0#tt it
 i
l,
 tw t/
i
] M omputing
inquéritos§.0:79E%1 ":$7$$%/%&&'8%&&8="ww(7&7-777
tt:// tl  ,/ itti
 JiK%&&8=I llKIlKCMIC;"1K
$%$%$%$%IC;4 :#(K&$8&$8 #tt it  i
l,

 tw t/
i2l.!1;0
tt://CwRC
it, /!li ti
/Cit 9/li
'&!1;R  =7$7-7&-$9
| D i
C l.$98$0Sistemas operacionaisB t
M tt:i
-?l9
$&$E$8&"wB(7-=7$-$&-& tt:// tl  ,/ itti
 JiK%'878I
llK,iIlK,iIC;"1K=&%$'=IC;4 :#(K$9&8$'
| w   Mi l;A Cwlt3.M $9'=06itt
/il
t 
i t  ommunications of the ] M¢
.0:$%'E$'71 ":$7$$%/&$=&8&$='%"ww(777$-7'8=
tt:// tl  ,/ itti
 JiK&$='%IlKCMI llKIC;"1K
$%$%$%$%IC;4 :#(K&$8&$8
| w / l
C.$9'0O design lógico de sistemas operacionais!
ti -Cll7
"wB(7-$-%7$$=-' tt:// tlCM ,/ itti
 J"1K%7=9
| 4

 
/.$9'90Organi. ação estruturada de computador#
,l/ 
Cli ( A9:!
ti -Cll"wB(7-$-$8%=$-7
| ?l /#C 
/C /i
A
 Di
 !i
! ll .A

$9'0CP1R:  
lit  i
l 2i   
ommunications of the ] M¢.&0:'E%1 ":$7$$%/%%&$&&7$'"ww(
777$-7'8= tt://///Cw>i,i
i//'-?l!1;
| Bii ;R4 i M>

 i.$9880.itli
0]rchitettura dei Sistemi di
Elaborazione, volume 1;

,li"wB(88-=7-='&-B
tt://///
,l it/li  Ji
K88=7='&BIiK%'I!C!w#ww"1K
9$89%$8$ $$% $ ' 97
| w/it Mi lMBi
(B  C
9MD9 melhorando a confiabilidade dos
sistemas operacionais de mercadoria Ml iili it
 i
i  iti1 iCM , i:$7$77=/87=7$7
tt://1 iCM ,/$7$$%/$7'9$%$7'9$9R  =7$7-7&-$9CM
4
 ti

C tw9t.4 Cw0 =
$ ''E$$7 ;9=77%

ð ( 


| 
/4

 Operating Systems ± Design and Implementation (Third
edition);
| 
/4

 Modern Operating Systems (Second edition);
| 1
il!B t M Cti The Linux Kernel;
| 1i!t
(iti
"
 9 !tt
 omputer Organization and
Design M ,
: 
."wB($-%%8&7-=8-&0;
| BwC l  omputer Organisation and ]rchitecture M ill
!."wB(7-
-&%%$-70

ð   
| :#R(#D R+  i ilDi
 
l 
| ti
,w9t:
ltw  ; ,
| ti
,w9t:
lt; t
| M"4# 
l ti
,w9t
| :
li,E1i
?i i
| 4 :9: w(

l it t $99=9( 
C9et al.
| 
 i/ t (t? ti
,w9t $9991/Mj  
+,Mi
 ll 
:9l! /ll.i9 it t i
t (t? w0
| :
l
/i  
it9 l
i
,Di
 
l  i
,
| 1til i
t/
 t l ti
,9t 
l

Você também pode gostar