Page 1
Estudo de Caso UNIX E LINUX
Page 2
Organização
10.1 História do Unix
10.2 Visão geral do Unix
10.3 Processos no Unix
10.4 Gerenciamento de memória no Unix
10.5 Entrada/Saída no Unix
10.6 O sistema de arquivos do Unix
10.7 Segurança no Unix
Page 3
3
UNIX
As camadas de um sistema Unix
Page 4
4
Programas Utilitários do Unix
Alguns dos programas utilitários comuns do Unix
necessários para o POSIX
Page 5
5
Núcleo do UNIX
Estrutura aproximada do núcleo genérico do UNIX
Page 6
6
Processos no UNIX
Criação de processo no Unix
Page 7
7
POSIX
Sinais necessários para o POSIX
Page 8
8
Chamadas ao Sistema para
Gerenciamento de Processos
s é um código de retorno
pid é um ID de processo
residual é o tempo restante no alarme anterior
Page 9
9
Shell do POSIX
Um shell altamente simplificado
Page 10
10
Threads no POSIX
Principais chamadas a threads no POSIX
Page 11
11
O Comando ls
Passos na execução do comando ls digitado no shell
Page 12
12
Flags para o clone do Linux
Bits do mapa de bits sharing_flags
Page 13
13
Escalonamento no UNIX
O escalonador do Unix é baseado em uma estrutura de fila multinível
Page 14
14
Iniciando o UNIX
A seqüência de processos usada para iniciar
alguns sistemas Unix
Page 15
15
Gerenciamento de Memória
a) Espaço de endereçamento virtual do processo A
b) Memória física
c) Espaço de endereçamento virtual do processo B
Page 16
16
Compartilhamento de Arquivos
Dois processos podem compartilhar um arquivo mapeado
Page 17
17
Chamadas ao Sistema para
Gerenciamento de Memória
s é um código de retorno
b e addr são endereços de memória
len é um comprimento
prot controla proteção
flags são de funções diversas
fd é um descritor de arquivo
offset é um deslocamento de arquivo
Page 18
18
Paginação no UNIX
Mapa de memória do 4BSD que tem uma entrada para cada página
Page 19
19
Paginação no Linux (1)
O Linux usa tabelas de páginas de três níveis
Page 20
20
Operação do algoritmo companheiro (buddy)
Paginação no Linux (2)
Page 21
21
Transmissão em Rede
Uso de sockets para transmissão em rede
Page 22
22
Gerenciamento de Terminal
As principais chamadas do POSIX para o
gerenciamento de terminal
Page 23
23
E/S no UNIX (1)
Alguns dos campos de uma tabela cdevswtípica
Page 24
24O sistema de E/S do Unix no BSD
E/S no UNIX (2)
Page 25
25
Fluxos (Streams)
Um exemplo de fluxos no Unix do System V
Page 26
26
O Sistema de Arquivos do Unix (1)
Alguns diretórios importantes encontrados na maioria
dos sistemas Unix
Page 27
27
(a) Antes da ligação (b) Depois da ligação
O Sistema de Arquivos do Unix (2)
Page 28
28
(a) Sistemas de arquivos separados (b) Após a montagem
O Sistema de Arquivos do Unix (3)
Page 29
29
Chamadas ao Sistema para
Gerenciamento de Arquivos
s é um código de retorno
fd é um descritor de arquivo
position é um deslocamento no arquivo
Page 30
30
A Chamada ao Sistema stat
Campos retornados pela chamada ao sistema stat
Page 31
31
Chamadas ao Sistema para
Gerenciamento de Diretório
s é um código de retorno
dir identifica um diretório
dirent é uma entrada no diretório
Page 32
32
Sistema de Arquivos do Unix (1)
Esquema do disco em sistemas Unix clássicos
Page 33
33
Estrutura do i-node no System V
Sistema de Arquivos do Unix (2)
Page 34
34
A relação entre a tabela de descritores de arquivos, a tabela
de descrição de arquivos abertos e a tabela de i-nodes
Sistema de Arquivos do Unix (3)
Page 35
35
a) Um diretório BSD com três arquivos
b) O mesmo diretório após a remoção do arquivo volumoso
Sistema de Arquivos do Unix (4)
Page 36
36
O Sistema de Arquivos do Linux
Esquema do sistema de arquivos Ext2 do Linux
Page 37
37
NFS - Sistema de Arquivos
em Rede (1)
a) Exemplos de sistemas de arquivos montados remotamente
b) Diretórios são mostrados como quadrados e arquivos como círculos
Page 38
38A estrutura em camadas do NFS
NFS - Sistema de Arquivos
em Rede (2)
Page 39
39
Segurança no UNIX
Alguns exemplos de modos de proteção de arquivos
Page 40
40
Chamadas ao Sistema para Segurança
no Unix
s é um código de retorno
uid e gid são o identificador de usuário - UID e o identificador de grupo - GID, respectivamente