unix - sistemas operacionais
DESCRIPTION
Apresentação do SO UNIX para a disciplina de Sistemas Operacionais.TRANSCRIPT
![Page 1: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/1.jpg)
unix> nelicio junior> rodrigo brito
“o unix te dá 35 maneiras diferentespara você se matar.”
![Page 2: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/2.jpg)
> o que é UNIX?
Sistema operacional portável, multitarefa emultiusuário. Originalmente criado por
Ken Thompson, Dennis Ritchie,Douglas Mcllroy e Peter Weiner.
![Page 3: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/3.jpg)
> histórico
AT&T – GE MIT1965 – Multics (laboratório de pesquisas);
1969 – Bell retirase;1969 Multics reescrito como Unics;
1973 – Unix reescrito em C;1970 – 80 – Primeiras distribuições (BSD e
System III e V);1977 – AT&T comercializa o Unix;
![Page 4: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/4.jpg)
![Page 5: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/5.jpg)
> características
escrito em linguagem de alto nível,tornando fácil a compreensão e alteraçãodo seu código e portabilidade para outras
plataformas; oferece um conjunto de system calls que
permite que programas complexos sejamdesenvolvidos a partir de uma interface
simples;
![Page 6: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/6.jpg)
> características
flexibilidade, podendo ser utilizadocomo sistema operacional de computadores
pessoais, estações de trabalho e servidores de todos os portes, voltados
para banco de dados, web, correioeletrônico e aplicação;
implementação de threads, em algumasversões, e diversos mecanismos de comunicação e sincronização, como
memória compartilhada, pipes e semáforos;
![Page 7: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/7.jpg)
> características
suporte a um grande número deaplicativos disponíveis no mercado, sendo
muitos gratuitos; suporte a diversos protocolos de rede,como o TCP/IP e interfaces de programação,
como sockets, podendo ser utilizadocomo servidor de comunicação, roteador,
firewall e proxy; oferece uma interface simples e uniforme
com os dispositivos de I/O.
![Page 8: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/8.jpg)
> estrutura do sistema
linguagens: C e assembly dois modos de acesso:
modo usuáriomodo kernel
![Page 9: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/9.jpg)
![Page 10: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/10.jpg)
> kernel
controla o hardware; fornece system calls; dividido em 2 partes:dependente do hardwareindependente do hardware
Uma System Call (chamada de sistema) é usado pela aplicação (usuário) programas para solicitação de serviços do sistema operacional. Um sistema operacional pode acessar o hardware de um sistema diretamente, mas um programa do usuário não tem acesso direto ao hardware. Isto é feito para que o kernel possa manter o sistema seguro de programas de usuário mal-intencionado. Mas, muitas vezes, um programa do usuário requer algumas informações do hardware (por exemplo, de uma câmera web para mostrar-lhe a imagem), mas não pode obter as informações diretamente. Assim, solicita ao sistema operacional para
Fornecer-lhe a solicitação. Esta solicitação é feita usando uma chamada de sistema adequada. A chamada de sistema executa no modo kernel. Cada chamada de sistema tem um número associado a ele. Este número é passado para o kernel e é assim que o kernel sabe qual a System Call foi feita. Quando um programa de usuário emite uma chamada de sistema, na realidade, é chamada uma rotina da biblioteca.
Uma System Call (chamada de sistema) é usado pela aplicação (usuário) programas para solicitação de serviços do sistema operacional. Um sistema operacional pode acessar o hardware de um sistema diretamente, mas um programa do usuário não tem acesso direto ao hardware. Isto é feito para que o kernel possa manter o sistema seguro de programas de usuário mal-intencionado. Mas, muitas vezes, um programa do usuário requer algumas informações do hardware (por exemplo, de uma câmera web para mostrar-lhe a imagem), mas não pode obter as informações diretamente. Assim, solicita ao sistema operacional para
Fornecer-lhe a solicitação. Esta solicitação é feita usando uma chamada de sistema adequada. A chamada de sistema executa no modo kernel. Cada chamada de sistema tem um número associado a ele. Este número é passado para o kernel e é assim que o kernel sabe qual a System Call foi feita. Quando um programa de usuário emite uma chamada de sistema, na realidade, é chamada uma rotina da biblioteca.
Uma System Call (chamada de sistema) é usado pela aplicação (usuário) programas para solicitação de serviços do sistema operacional. Um sistema operacional pode acessar o hardware de um sistema diretamente, mas um programa do usuário não tem acesso direto ao hardware. Isto é feito para que o kernel possa manter o sistema seguro de programas de usuário mal-intencionado. Mas, muitas vezes, um programa do usuário requer algumas informações do hardware (por exemplo, de uma câmera web para mostrar-lhe a imagem), mas não pode obter as informações diretamente. Assim, solicita ao sistema operacional para
Fornecer-lhe a solicitação. Esta solicitação é feita usando uma chamada de sistema adequada. A chamada de sistema executa no modo kernel. Cada chamada de sistema tem um número associado a ele. Este número é passado para o kernel e é assim que o kernel sabe qual a System Call foi feita. Quando um programa de usuário emite uma chamada de sistema, na realidade, é chamada uma rotina da biblioteca.
Uma System Call (chamada de sistema) é usado pela aplicação (usuário) programas para solicitação de serviços do sistema operacional. Um sistema operacional pode acessar o hardware de um sistema diretamente, mas um programa do usuário não tem acesso direto ao hardware. Isto é feito para que o kernel possa manter o sistema seguro de programas de usuário mal-intencionado. Mas, muitas vezes, um programa do usuário requer algumas informações do hardware (por exemplo, de uma câmera web para mostrar-lhe a imagem), mas não pode obter as informações diretamente. Assim, solicita ao sistema operacional para
Fornecer-lhe a solicitação. Esta solicitação é feita usando uma chamada de sistema adequada. A chamada de sistema executa no modo kernel. Cada chamada de sistema tem um número associado a ele. Este número é passado para o kernel e é assim que o kernel sabe qual a System Call foi feita. Quando um programa de usuário emite uma chamada de sistema, na realidade, é chamada uma rotina da biblioteca.
![Page 11: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/11.jpg)
dependente do hardware:tratamento de interrupções e exceções,
device drivers,interpretação de sinais
independente do hardware:system calls,
gerência de processos,gerência de memória,
escalonamento,pipes,
paginação,swapping,
sistema de arquivos
ão tem nenhum vinculo com aparente com a plataforma onde esta sendo executadaão tem nenhum vinculo com aparente com a plataforma onde esta sendo executada
![Page 12: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/12.jpg)
> system calls usado por programas para solicitação de
serviços do SO.
![Page 13: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/13.jpg)
> processos e threads suporta inúmeros processos, que
podem ser executadosconcorrentemente ou simultaneamente. primeiras versões não implementavamo conceito de threads, porém versõesmais recentes já oferecem suporte
a aplicações multithread.
Uma System Call (chamada de sistema) é usado pela aplicação (usuário) programas para solicitação de serviços do sistema operacional. Um sistema operacional pode acessar o hardware de um sistema diretamente, mas um programa do usuário não tem acesso direto ao hardware. Isto é feito para que o kernel possa manter o sistema seguro de programas de usuário mal-intencionado. Mas, muitas vezes, um programa do usuário requer algumas informações do hardware (por exemplo, de uma câmera web para mostrar-lhe a imagem), mas não pode obter as informações diretamente. Assim, solicita ao sistema operacional para
Fornecer-lhe a solicitação. Esta solicitação é feita usando uma chamada de sistema adequada. A chamada de sistema executa no modo kernel. Cada chamada de sistema tem um número associado a ele. Este número é passado para o kernel e é assim que o kernel sabe qual a System Call foi feita. Quando um programa de usuário emite uma chamada de sistema, na realidade, é chamada uma rotina da biblioteca.
![Page 14: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/14.jpg)
![Page 15: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/15.jpg)
> system call fork processo executa o fork (pai); processo filho tem seu próprio
espaço de endereçamento; o fork copia o espaço de
endereçamento do processo pai parao filho, incluindo o códigoexecutável e suas variáveis.
daemons
Uma System Call (chamada de sistema) é usado pela aplicação (usuário) programas para solicitação de serviços do sistema operacional. Um sistema operacional pode acessar o hardware de um sistema diretamente, mas um programa do usuário não tem acesso direto ao hardware. Isto é feito para que o kernel possa manter o sistema seguro de programas de usuário mal-intencionado. Mas, muitas vezes, um programa do usuário requer algumas informações do hardware (por exemplo, de uma câmera web para mostrar-lhe a imagem), mas não pode obter as informações diretamente. Assim, solicita ao sistema operacional para
Fornecer-lhe a solicitação. Esta solicitação é feita usando uma chamada de sistema adequada. A chamada de sistema executa no modo kernel. Cada chamada de sistema tem um número associado a ele. Este número é passado para o kernel e é assim que o kernel sabe qual a System Call foi feita. Quando um programa de usuário emite uma chamada de sistema, na realidade, é chamada uma rotina da biblioteca.
![Page 16: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/16.jpg)
> sinais um sinal permite que um processo
seja avisado da ocorrência de eventossíncronos e assíncronos.
Uma System Call (chamada de sistema) é usado pela aplicação (usuário) programas para solicitação de serviços do sistema operacional. Um sistema operacional pode acessar o hardware de um sistema diretamente, mas um programa do usuário não tem acesso direto ao hardware. Isto é feito para que o kernel possa manter o sistema seguro de programas de usuário mal-intencionado. Mas, muitas vezes, um programa do usuário requer algumas informações do hardware (por exemplo, de uma câmera web para mostrar-lhe a imagem), mas não pode obter as informações diretamente. Assim, solicita ao sistema operacional para
Fornecer-lhe a solicitação. Esta solicitação é feita usando uma chamada de sistema adequada. A chamada de sistema executa no modo kernel. Cada chamada de sistema tem um número associado a ele. Este número é passado para o kernel e é assim que o kernel sabe qual a System Call foi feita. Quando um programa de usuário emite uma chamada de sistema, na realidade, é chamada uma rotina da biblioteca.
![Page 17: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/17.jpg)
> estruturas de dados (processo) estutura do processo área do usuário
![Page 18: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/18.jpg)
![Page 19: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/19.jpg)
![Page 20: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/20.jpg)
> gerência do processador dois tipos de escalonamento:
circular com prioridadeescalonamento por prioridade
processos tem prioridade entre0 e 127
quanto menor o valor, maior a prioridade;
![Page 21: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/21.jpg)
> gerência de memória paginação por demanda; paginação com swapping; endereçamento em três
segmentos:texto – dados pilha
![Page 22: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/22.jpg)
![Page 23: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/23.jpg)
> sistema de arquivos primeiro componente a ser
desenvolvido no Unix; um arquivo é simplesmente uma
sequência de bytes sem significadopara o SO.
todos os diretórios contém os nomesde arquivos ponto(.) e dois pontos
(..) que correspondem,respectivamente, ao própriodiretório e ao seu pai.
![Page 24: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/24.jpg)
![Page 25: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/25.jpg)
> sistema de arquivos três categorias de usuário;
user (dono)group
others (sem grupo)root (admin)
![Page 26: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/26.jpg)
![Page 27: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/27.jpg)
![Page 28: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/28.jpg)
> sistema de arquivos No Unix não existe dependência
entre a estrutura lógica do sistemade arquivos e o local
onde os arquivos estão fisicamentearmazenados.
![Page 29: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/29.jpg)
![Page 30: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/30.jpg)
> sistema de arquivos Existem padrões para a
implementação de sistemas de arquivosremotos, como:
Network File System(NFS)Remote File System(RFS)Andrew File System(AFS)
![Page 31: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/31.jpg)
"Se você tem uma maçã e eu tenho uma maçã, e nós trocamos as maçãs, então você e eu ainda teremos uma
maçã. Mas se você tem uma idéia e eu tenho uma idéia, e nós trocamos essas idéias, então cada um de nós terá duas
idéias." George Bernard Shaw
![Page 32: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/32.jpg)
![Page 33: Unix - Sistemas Operacionais](https://reader036.vdocuments.net/reader036/viewer/2022082309/55861aa4d8b42a0e4a8b4b66/html5/thumbnails/33.jpg)