A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Sistemas Operacionais: FreeBSD e Linux

Apresentações semelhantes


Apresentação em tema: "Sistemas Operacionais: FreeBSD e Linux"— Transcrição da apresentação:

1 Sistemas Operacionais: FreeBSD e Linux
Daniel Ribeiro Juliana Lee

2 História do FreeBSD BSD, ou "Berkeley Software Distribution", surgiu como um conjunto de ‘patches’ e ferramentas para o Unix feitos pelo Computer Systems Research Group (CSRG) da Universidade de Berkeley na Califórnia. Quando o CSRG foi extinto, grupos de seus ex membros continuaram desenvolvendo o código. Um desses grupos desenvolveu o 386BSD, que rodava na plataforma Intel i386. Em 1993, este projeto se dividiu em outros dois: o FreeBSD e o NetBSD. Em 1996, um projeto posterior, o OpenBSD, originou-se à partir do NetBSD.

3 Diferenças entre os BSDs
O FreeBSD tem como propósito principal ter alta performance e facilidade de uso para usuários finais. É o BSD mais utilizado. A principal preocupação do NetBSD é portabilidade. O OpenBSD tem enfoque em questões de segurança e correção formal. BDS não livres: Darwin (usado no Mac OS X) e BSD/OS (é bastante similar ao FreeBSD).

4 História do Linux Surgiu a 1ª versão como um clone do UNIX, com linhas em C e 950 linhas em Assembler. ª versão, com linhas em C e linhas em Assembler, suporte para arquiteturas de 64 bits, novos protocolos e várias outras características. Apesar de livre, a GPL (GNU Public License) é maior que a Licença do Windows 2000 da Microsoft e especifica o que o usuário pode ou não fazer com o código.

5 Processos Ciclo de vida igual ao Unix.
Os processos são organizados em grupos. São usados para controlar acesso a terminais e prover meios de distribuição de sinais para processos correlatos. Jobs = processos de um mesmo grupo. Filhos de um processo herdam o grupo do pai. Um processo pode alterar o seu grupo, ou o de seus descendentes, mas a alteração deve seguir algumas regras.

6 Processos (cont.) Pipe: processos envolvidos sofrem um fork e estes são colocados num mesmo grupo. Grupos podem ser todos manipulados juntos por alguns mecanismos. Sessões: agrupamentos de grupos de processos Principais usos das sessões: criar ambientes isolados para um daemon e seus filhos, e coletar de uma vez o shell login e os jobs que esta shell cria.

7 Processos Processos e Threads Executável, Dormente, Zumbi, Parado
No Linux, as propriedades de um processo são agrupadas em: – identidade do processo - PID, Credenciais que definem os direitos de acesso a ficheiros e outros recursos do sistema – ambiente (environment) - Composto por 2 vetores de apontadores para caracteres – contexto - É o estado de um programa em execução num dado instante de tempo (muda constantemente)

8 Escalonamento de processos
Todo processo possui uma prioridade de escalonamento a ele associada: quanto maior o número, menor a prioridade. Processos fazendo I/O de disco ou outras funções importantes possuem prioridades menores do que “pzero” e não podem ser mortos por sinais. Processos de usuários comuns possuem prioridades positivas, e portanto são menos propensos a rodar do que qualquer processo do sistema. Processos de usuário podem setar sua precedência um sobre ou outro, através do comando nice. Quanto mais tempo de CPU um processo acumula, menor (mais positiva), sua prioridade se torna.

9 Escalonamento de processos
Linux usa dois algoritmos de escalonamento: – Um para processos interativos (time sharing) – Um para processos de tempo real (real time) - FIFO - Round Robin Cada processo tem o campo counter que é número de jiffies que lhe restam para correr. É decrementado a cada tick do relógio. Quando chega a zero, é chamado o escalonador. O escalonador examina os descritores de todos os processos prontos, calculando o goodness para cada um; escolhe para correr o processo que tiver o goodness mais alto.

10 Memória Virtual Esquema de paginação simples.
Compilação padrão seta a prepaginação (raramente não se habilita esta opção). Reposição: Usa esquema FIFO 2 chance modificado. Libera páginas marcadas livres (em fila). Se o frame não estiver marcado livre e não estiver em uso (ex: I/O está sendo feito), a entrada na tabela de páginas que referencia o frame é buscado. Se for ‘inválida’, a página é adicionada à fila de páginas livres. Senão, a página é marcada ‘inválida’.

11 Memória Virtual (cont.)
Se o bit de referência existir, ele é usado ao invés de tais marcações. Existem verificações para garantir que o número de páginas válidas apontadas por um processo não fica num nível baixo. Existe um mecanismo que um processo pode limitar a quantidade de memória principal que ele utiliza. O padrão é que o segmento de dados de cada processo seja compartilhado e somente para leitura

12 Memória Memória Real e Virtual Swapping
Tabela de segmentos converte o endereço virtual, composto pelo par <nº do segmento, deslocamento>, num endereço físico. Ponto importante: as páginas virtuais só são copiadas para memória física quando são referenciadas.

13 Memória (cont.) Páginas: Estratégias de escolha - Demanda
Estratégias de colocação - first-fit / best-fit / worst-fit / random-fit Estratégias de reposição - Randômico, FIFO, LRU, LFU, NUR, WS

14 Abstract model of Virtual to Physical address mapping

15 Sistemas de Arquivos Alguns sistemas de arquivos do FreeBSD possuem dois tamanhos de blocos para inodes sem indiretos. Todos os blocos excepto o último possuem o mesmo tamanho. O último bloco é um múltiplo apropriado de um menor tamanho de fragmento (ex 1k) apropriado para completar o arquivo. Ex: um arquivo de 18,000 bytes teria dois blocos de 8K e um fragmento de 2K (que não seria completo totalmente). Muitos arquivos pequenos – tamanho de framento pequeno. Tamanho de bloco / tamanho de fragmento: no máximo 8:1. Menor tamanho de um bloco: 4K.

16 Sistemas de Arquivos Muito flexível e capaz de coexistir com muitos SO, já que suporta 15 file systems: ext, ext2, xia, minix, umsdos, msdos, vfat, proc, smb, ncp, iso9660, sysv, hpfs, affs and ufs, além de outros que serão adicionados com o tempo. 1992 – Surge o 1º file system designado especialmente para Linux, o Extended File system, ou EXT. 1993 – Surge o Second Extended File system, ou EXT2. Cada arquivo no EXT2 file é descrito por um simples inode e cada inode tem um único nº que o identifica.

17 Sistemas de Arquivos EXT2 Inode

18 Sistemas de Arquivos EXT2 Inode (cont.)
mode – dividido em 2 pedaços: o que este inode descreve e as permissões que usuários tem para ele. Owner Information – tipo de usuário e grupo a que os donos deste arquivo ou diretório pertencem. Size – o tamanho do arquivo em bytes. Timestamps – a hora em que o inode foi criado e a útlima hora em que foi modificado. Datablocks – ponteiros para os blocos que contém os dados que este inode está descrevendo.

19 Fim


Carregar ppt "Sistemas Operacionais: FreeBSD e Linux"

Apresentações semelhantes


Anúncios Google