System) e DFS( Distributed File System);Oferece uma interface simples e uniforme com os dispositivos de I/O.Estruturado sistemaA maior parte do codigodo Unix e escrita em C e o restante como device drivers, em assemblyo que possibilita uma grande portabilidade para diferentesplataformas de hardware. O Unix utiliza a estrutura de camadas para aconstrucao do sistema, implementando dois modos de acesso, modousuario e modo kernel:Veja o texto Completo KernelKernel e responsavelpor controlar o hardware e fornecer as system calls para que osprogramas tenham acesso as rotinas do sistema, como criacao egerencia de processos, gerencia de memoria virtual, sistema dearquivos e gerencia de I/O, assim facilitando o desenvolvimento deaplicativos, e pode ser dividido em 2 partes: a parte dependente dehardware e a independente de hardware.A parte dependente dehardware consiste nas rotinas de tratamentos de interrupcoes eexcecoes , device drives e interpretacao de sinais ou seja todo ocodigo que deve ser reescrito quando se esta portando o sistemaUnix para outra plataforma.A parte independente dehardware nao tem nenhum vinculo com aparente com a plataforma ondeesta sendo executada, e e responsavel pelo tratamento das systemcalls, gerencia de processos, gerencia de memoria, escalonamento,pipes, paginacao, swapping e sistema de arquivos.System calls:Uma System Call (chamada de sistema) e usado pela aplicacao (usuario) programas para solicitacao de servicos do sistema operacional. Um sistema operacional pode acessar o hardware de um sistema diretamente, mas um programa do usuario nao tem acesso direto ao hardware. Isto e feito para que o kernel possa manter o sistema seguro de programas de usuario mal-intencionado. Mas, muitas vezes, um programa do usuario requer algumas informacoes do hardware (por exemplo, de uma camera web para mostrar-lhe a imagem), mas nao pode obter as informacoes diretamente. Assim, solicita ao sistema operacional paraFornecer-lhe a solicitacao. Esta solicitacao e feita usando uma chamada de sistema adequada. A chamada de sistema executa no modo kernel. Cada chamada de sistema tem um numero associado a ele. Este numero e passado para o kernel e e assim que o kernel sabe qual a System Call foi feita. Quando um programa de usuario emite uma chamada de sistema, na realidade, e chamada uma rotina da biblioteca.Biblioteca padraoPara cada rotina dosistema, existe uma biblioteca padrao do Unix que permite esconderos detalhes da mudanca de modo de acesso usuario-kernel-usuario,A biblioteca implementa uma interface entre os programas e o sistemaoperacional, fazendo com que as system calls sejam chamadas.Processos e threadsO Unix suporta inumerosprocessos, que poder ser executados concorrentemente ousimultaneamente. As primeiras versoes do Unix nao implementavam oconceito de threads, porem versoes mais recentes ja oferecem algumtipo de suporte a aplicacoes multithread.Um processo e criadoatraves da system call fork. O processo de executa o fork e chamadode processo pai, enquanto que o novo processo e chamado de processofilho ou subprocesso. Cada processo filho tem seu proprio espacode enderecamento, independente do processo pai. Apesar de o espacode enderecamento dos subprocessos ser independente. Sempre que umprocesso e criado, o sistema associa identificadores, que fazemparte do contexto de software, permitindo implementar mecanismos deseguranca.A system call fork ,alem de criar o subprocesso, copia o espaco de enderecamento doprocesso pai para o filho, incluindo