Documente Academic
Documente Profesional
Documente Cultură
Agenda
Introduo aos
Sistemas Operacionais
Objetivos de um
Sistema Operacional
1)
Mquina Virtual
Interface entre:
Recursos do sistema
Usurio / programas
Introduo
P1
P2
P4
P3
Ncleo do
Sistema Operacional
Processador
Contr.
Memria
Hardware
Contr.
Terminais
Discos
Unidades de Fita
Impressora
10
Componentes de um
Sistema Operacional
Aplicativos
Sistema
Operacional
Componentes
Fsicos
11
12
composto por:
Processo
Interface de
chamadas ao sistema
Processo
Processos de
gerncia
Processo
Aplicativos
Utilitrios do
Sistema
Ncleo
Sistema
Operacional
Device Drivers
Interface de
hardware
Hardware
Dispositivos
Componentes
Fsicos
Introduo
13
14
Mquina de nveis
Aplicativos
Mquina de Nveis
Software
Utilitrios e
Processos de gerncia
Ncleo do Sistema
Operacional
Monitor
Linguagem de Mquina
Hardware
Microprogramao
Dispositivos Fsicos
15
16
17
Monoprogramado
Suporta somente uma aplicao (processo) por vez
Multiprogramado
Suporta vrias aplicaes (processos) simultneos
18
Variedades de
Sistemas Computacionais
Monoprocessador
Pode ser executado somente em hardwares
monoprocessadores (1 nico processador)
Multiprocessador
Pode ser executado em hardwares
multiprocessadores (vrios processadores)
Introduo
19
20
Chamadas ao Sistema
Chamadas ao Sistema
21
22
Chamadas ao Sistema
O que ?
Conjunto de funes que o ncleo do sistema
operacional disponibiliza aos processos
Em ingls: System Calls
Processo
Processo
Processo
Interface de
chamadas ao sistema
Ncleo do Sistema Operacional
Device Drivers
Interface de
hardware
Hardware
Dispositivos
Chamadas ao Sistema
Manipulao de processos
23
24
Chamadas ao Sistema
Chamada
Descrio
Chamada
Descrio
fork
Duplica um processo
open
Abre um arquivo
waitpid
close
execve
read
L dados de um arquivo
exit
write
ioctl
lseek
stat
Introduo
Chamadas ao Sistema
Descrio
mkdir
rmdir
link
unlink
mount
umount
Descrio
chdir
chmod
kill
time
Manipulao de processos
28
Chamada
Descrio
Chamada
Descrio
CreateProcess
Cria um processo
CreateFile
WaitForSingleObject
CloseHandle
ExitProcess
ReadFile
L dados de um arquivo
WriteFile
SetFilePointer
GetFileAttributeEx
Chamadas ao Sistema
Principais Chamadas Win32
Chamada
Chamadas ao Sistema
Outras chamadas
27
Chamadas ao Sistema
26
Chamadas ao Sistema
25
Descrio
CreateDirectory
RemoveDirectory
DeleteFile
29
30
Chamadas ao Sistema
Outras chamadas
Chamada
Descrio
SetCurrentDirectory
GetLocalTime
Introduo
31
32
Arquitetura UNIX
Usurio
Interface de usurio
via shell
Aplicativos
shell
ls
Utilitrios do Sistema
init
Interface de
chamadas ao sistema
processos
Arquitetura UNIX
inetd
nfsd
...
Processos de gerncia
Ncleo
Device Drivers
Interface de
hardware
Hardware
Componentes
Fsicos
Dispositivos
Sistema
Operacional
33
34
Arquitetura UNIX
Arquiteturas Windows
Arquiteturas Windows
Windows 95
Voltado a processadores de 32 bits
Suporte a multiprogramao preemptiva
Memria virtual
35
36
Arquiteturas Windows
Windows 95
Introduo
37
38
Modo Usurio
Arquitetura WindowsNT
Aplicativo
POSIX
Aplicativo
Win32
Subsistema
POSIX
Interface de
chamadas ao
sistema
Modo Supervisor
Arquitetura WindowsNT
Subsistema
Win32
Subsistema
OS/2
Subsistema
Segurana
Microkernel
Driver de
Dispositivo
Gerenc.
Janelas
Driver de
Dispositivo
Grfico
Hardware
39
Arquitetura WindowsNT
Processo
de logon
Executivo
Local
Virtual
Security Process
I/O
Object
Proc.Call Memory
Manager Manager Reference Manager
Facility
Manager
Monitor
Aplicativo
OS/2
40
Arquitetura WindowsNT
Executivo
Caractersticas
Arquitetura WindowsNT
Microkernel (tambm chamado de NT kernel)
Responsvel por
Escalonamento de threads (dispatcher)
Sincronizao
Manipulao dos vetores de interrupo
Implementa 32 nveis de prioridade
Implementa escalonamento preemptivo
Implementa sincronizao baseada em:
mutex
semforos
eventos
spinlocks
Monoltico
Multi-threaded
Reentrante
41
42
Arquitetura WindowsNT
HAL
Hardware Abstraction Layer
(camada de abstrao de hardware)
Camada utilizada para esconder dependncias de
arquitetura
Exemplo:
Sistemas monoprocessadores x multiprocessadores
Para cada verso NT so fornecidas 3 verses
monoprocessador
multiprocessador
para depurao (p/ desenvolvimentod e device drivers)
Introduo
Arquitetura WindowsNT
43
44
Arquitetura WindowsNT
Aplicao
Modo
Usurio
Interface de
chamadas ao
sistema
Biblioteca NTdll.dll
ntdll.dll
TRAP
Modo
Supervisor
Servios NT
Hardware
Arquitetura WindowsNT
45
Arquitetura WindowsNT
Modo
Usurio
Interface de
chamadas ao
sistema
mensagem
(LPC - Local Procedure Call)
Modo
Supervisor
LPC x TRAP
LPC possui maior sobrecarga:
Cada interao envolve geralmente 2 mensagens (pedido e
resposta)
Para cada mensagem ocorre:
Operating System
Environment
Server
ntdll.dll
TRAP
TRAP
ntdll.dll
TRAP
Servios NT
Hardware
Arquitetura WindowsNT
Modo
Usurio
ntdll.dll
mensagem
(LPC)
Modo
Supervisor
TRAP
TRAP
Subsistema
Win32
(CSRSS.exe)
TRAP
Servios NT
Hardware
48
ntdll.dll
Interface de
chamadas ao
sistema
47
User32.dll
GDI32.dll
Kernel32.dll
1 TRAP
1 troca de contexto
troca da tabela de pginas
atualizao de informaes de escalonamento
troca de todos os registradores
....
Arquitetura WindowsNT
46
Introduo
Arquitetura WindowsNT
Interface de
chamadas ao
sistema
Aplicao
Win32
Subsistema
Win32
(CSRSS.exe)
User32.dll
GDI32.dll
Kernel32.dll
Win32k.sys
Devido problemas de desempenho, as bibliotecas USER32 e GDI32
ativam os servios atravs de uma chamada a um driver chamado
Win32k.sys que executado em modo supervidor (kernel mode). Tais
bibliotecas contm stubs que ativam estes servios utilizando a
interrupo 0x2E. A maior parte das funcionalidades foi retirada do
Subsistema Windows32 (CSRSS.EXE) e implementada neste driver.
CSRSS.EXE
Este processo (Subsistema Windows32) ainda mantido. Entretanto
seu papel limitado a manter suporte a E/S de console.
ntdll.dll
ntdll.dll
TRAP
TRAP
TRAP
TRAP
Win32K.sys
Modo
Supervisor
50
Arquitetura WindowsNT
Modo
Usurio
49
Servios NT
Hardware
51
52
Arquitetura WindowsNT
psxdll.dll
Referncias Bibliogrficas
Subsistema
POSIX
(psxss.exe)
ntdll
mensagem
(LPC)
Interface de
chamadas ao
sistema
TRAP
ntdll
TRAP
TRAP
Servios NT
Hardware
53
Referncias Bibliogrficas
http://www.windowsitlibrary.com/Content/356/03/1.html