9
UNIVERSIDADE... Joelson Mota Salvador 2016

Sistema operacional solaris

Embed Size (px)

Citation preview

Page 1: Sistema operacional solaris

UNIVERSIDADE...

Joelson MotaSalvador

2016

Page 2: Sistema operacional solaris

UNIVERSIDADE...

Joelson Mota

Pesquisa requisitada pela disciplina Introdução a Sistemas Operacionais, orientado pelo Prof....

Nessa Pesquisa, será apresentada a estrutura e o funcionamento do sistema operacional Solaris, desenvolvido pela Sun Microsystems,

mais precisamente no que se refere ao gerenciamento de processos, gerenciamento de memória e escalonamento, sistema de arquivos e

mecanismo de segurança utilizados por esse poderoso sistema operacional

Salvador 2016

Page 3: Sistema operacional solaris

Gerência de Processos

O SOLARIS é um sistema multiprogramável, onde cada usuário pode ter vários processos ativos simultaneamente. Em um grande sistema, podem chegar a existir milhares de processos ativos ao mesmo tempo. O Kernel do sistema é responsável pelo controle desses processos, desde sua criação, execução e destruição do mesmo.

Inicialmente, quando se dá a ativação do sistema, é criado o processo 0, que por sua vez cria o processo 1, conhecido como init. Este é ancestral de todos os outros processos.

Os processos são criados pela primitiva de sistema fork. Essa função, quando é chamada por um processo em execução (processo-pai), cria uma cópia igual desse processo (processo-filho), um processo-pai pode ter vários processos-filhos e estes também podem ter seus processos-filhos. A partir daí, tanto o processo-pai, quanto o processo-filho têm seu próprio espaço de endereçamento. Dessa forma, as variáveis de um não são visíveis ao outro e vice-versa.

O gerenciamento de processos é feito pelo kernel e é utilizado para mostrar os processos que estão sendo executados em uma determinada estação de trabalho. Além disso, o kernel tem o poder de criar, interromper e reinicializar processos, investigar e depurar processos irregulares (processos que não estão realizando o trabalho esperado). O kernel como gerenciador, também utiliza semáforos como mecanismo de exclusão mútua e escalonamento circular com filas múltiplas, que servem para indicar a prioridade de cada processo. O gerenciador também controla a comunicação entre processos, que pode ser feita através de memória compartilhada ou por transmissão de mensagens. Na memória compartilhada, os processos criam um segmento onde poderão trocar informações lendo e gravando dados nessa região. Na transmissão de mensagens, os processos se comunicam sem dividir o mesmo espaço de endereço, podendo ser sistemas distribuídos, comunicando-se por uma rede.

Gerenciamento de memória e escalonamento

O gerenciamento de memória é fundamental para qualquer tipo de sistema operacional. Suas principais funções são: o controle de memória em utilização, a alocação de memória para os processos quando for preciso, a retirada dos dados quando os mesmos forem encerrados e a troca de dados entre a memória secundária e a memória principal quando a última não conseguir armazenar os processos.

O Solaris é um sistema preemptivo, ou seja, o tempo é compartilhado entre os processos a serem executados e, é de responsabilidade do kernel o gerenciamento de memória. Nesse tipo de sistema, cada processo tem um tempo distinto de

Page 4: Sistema operacional solaris

execução e fica numa fila de espera na memória aguardando sua vez. Vale lembrar que até o fim da execução de um processo ele passa pela CPU inúmeras vezes, ou seja, ele volta à fila de memória repentinamente até ser todo executado. Para isso, é necessário que o gerenciador de memória suspenda ou retorne um processo sempre que preciso. É importante ressaltar que o gerenciador de memória sabe lidar com os processos que estão no aguardo de um dado de entrada e saída para que esses não partilhem o tempo de execução.

A técnica de escalonamento de memória do Solaris segue a ideia de que processos que forem levar muito tempo para serem executados terão níveis de prioridade menores. As tarefas que exigem um tempo maior de execução serão mais lentas não só por seu tempo de execução maior, mas também por terem nível de prioridade mais baixo. Desse modo, um número maior de tarefas “simples” poderão ser utilizadas rapidamente pelo usuário, aprimorando a aparência de processamento em tempo real (real-time). Isso tudo é uma questão de escolha dos projetistas que adotam certos caminhos como prioridade.

Por tratar-se de um sistema multithread, esse sistema operacional possui threads especiais no kernel que tratam do caso das interrupções. Essas estão sempre em maior prioridade no sistema e podem usar regras padrões do kernel para bloquear algum recurso quando for preciso.

Nesse sistema operacional os threads possuem duas prioridades, uma que provém da sua classe de escalonamento e outra que é herdada da sua interação com outros objetos – a de escalonamento é sempre maior que as herdadas. Quando um thread de prioridade mais alta estiver bloqueando um recurso, ele poderá transferir temporariamente sua prioridade para um thread de prioridade mais baixa, tal feito é conhecido como inversão de prioridade.

Devido a limitação da memória principal nos computadores. Dada essa limitação, o Solaris enfrenta esse problema com a técnica de swapping, uma espécie de gerência de memória virtual, no qual processos que estão em menor utilização na memória quando ela está cheia, são paginados e colocados na memória secundária. Tais páginas são trazidas de volta a memória principal somente quando forem referenciadas. A vantagem disso é que a paginação ocupada um espaço de memória principal muito menor do que todo um programa carregado nela, já que a página direciona à memória secundária o segmento de dados que antes ocupava a memória principal. Um algoritmo fica analisando toda a memória principal em intervalos de tempo, para caso seja necessário uma nova página, uma atualização, ou exclusão. A priori, todas as páginas são marcadas como não utilizadas (bit de acesso igual a zero), assumindo valor de bit igual a um quando passam a ser referenciadas. Elas são observadas também de tempo em tempo pelo sistema para verificar-se seu bit de acesso. Caso esse tenha se alterado, ocorre uma atualização informando se estão liberadas ou não para uso.

Page 5: Sistema operacional solaris

Gerência de Arquivos

O sistema de arquivos do SOLARIS é baseado em uma estrutura de diretórios em árvore, não existindo dependência entre a estrutura lógica desses diretórios e o local onde os arquivos estão fisicamente armazenados. Esse modelo permite que uma estrutura seja formada por diferentes discos, inclusive em estações remotas.

Utilizando uma arquitetura denominada Virtual File System (VFS), o SOLARIS proporciona uma interface padrão para diferentes tipos de sistemas de arquivos, uma vez que essa arquitetura permite ao kernel do sistema controlar operações básicas como ler, escrever ou listar arquivos, sem que seja necessário um conhecimento do tipo de sistema de arquivos, tanto pelo usuário quanto pelo programa.

Existem três tipos de arquivos no SOLARIS:

Page 6: Sistema operacional solaris

Diretórios: Podem conter arquivos ou outros diretórios. Arquivos regulares: Contendo qualquer tipo de dado que o usuário deseje. Arquivos especiais: Estão associados a dispositivos de entrada/saída

(locais ou remotos).

Sistemas de Arquivos Suportados

UFS (Unix File System): sempre foi o principal sistema de arquivos usado no Open Solaris para discos rígidos, principalmente para o disco de boot. Entretanto, atualmente o disco de boot do Open Solaris utiliza o ZFS por padrão;

PCFS (Personal Computer File System): uma implementação do FAT32 para Unix utilizada em disquetes e pen drives;

UDFS (Universal Disk Format File System): sistema de arquivos utilizado em CDs e DVDs;

HSFS (High Sierra File System): sistema de arquivos utilizado em CDs; ZFS (Zeta Byte File System): considerado um dos mais poderosos sistemas de

arquivos atuais, é atualmente uma das opções para discos de aplicativos e boot; TMPFS: este sistema de arquivos persiste seu armazenamento em memória RAM

e, por isso, tem característica temporária. Um exemplo é o sistema /tmp, muito semelhante ao do Linux, porém persistido em memória; ou seja, ao reiniciar o sistema, todo o seu conteúdo é apagado;

SWAPFS: usado em partições swap; PROCFS: usado no diretório /proc para representar os processos ativos do sistema; NFS (Network File System): utilizado para compartilhar arquivos via rede.

Por ser um sistema operacional multiusuário, o Solaris necessita de segurança para o sistema de arquivos. Cada arquivo apresenta um nível de proteção definido pela categoria do usuário. Todo arquivo ou diretório possui um user que pertence a um grupo. Qualquer usuário que não seja dono do arquivo e não pertença ao respectivo grupo, enquadra-se na categoria others. Por fim, o administrador do sistema, chamado de root, tem acesso irrestrito a todos os arquivos. Dependendo da categoria do usuário, três tipos de acesso podem ser concedidos, read, write ou execute.

Mecanismos de segurança

O SOLARIS apresenta quatro níveis de proteção: controle de login, controle de acesso aos recursos do sistema, segurança para desenvolvimento e distribuição de serviços e controle de acesso à rede física.

O primeiro nível consiste em ferramentas que ajudam o administrador a controlar o acesso dos usuários ao sistema. Toda vez que o usuário vai acessar o sistema, é necessário fazer o log in. Esse controle consiste em verificar a identidade do

Page 7: Sistema operacional solaris

requisitante mediante uma senha, o que identifica o usuário e o que ele tem permissão para fazer. Uma vez efetuado esse ingresso ao sistema, o usuário pode acessar os recursos que lhe estão disponíveis.

O segundo nível habilita o administrador a controlar o acesso geral aos recursos do sistema, provendo ferramentas com as quais pode se configurar a segurança desse sistema, além de um recurso de auditoria usado para rastrear tentativas de acesso.

No terceiro nível, existe a preocupação com a segurança para desenvolvimento e distribuição de serviços. O SOLARIS oferece a possibilidade da configuração dos privilégios de acesso a arquivos de acordo com a categoria do usuário, utilizando serviços de autenticação, autorização, privacidade e integridade de dados.

O quarto nível controla o acesso à rede física. Em uma rede, além da ameaça externa, os usuários podem, acidentalmente, expor dados ou informações importantes. Para evitar que problemas dessa natureza ocorram, o SOLARIS viabiliza essa segurança mediante o Solstice Firewall.

A proposta desse sistema de segurança de rede é permitir ou não a entrada de pacotes e controlar o tráfego entre diferentes departamentos de uma mesma organização, sempre de acordo com a política de segurança definida pela empresa. OSolstice Firewall provê um mecanismo eficiente de filtragem e um poderoso sistema de registro e alerta contra tentativas de violações.

Referências:

http://www.midiacom.uff.br/~natalia/2012-1-sisop/tgrupo6.pdf

http://fajesu-solaris.blogspot.com.br/2011/05/gerencia-de-arquivos.html

https://sosistemasoperacionais.wordpress.com/open-solaris/gerencia-de-memoria/

http://www.cin.ufpe.br/~joa/menu_options/school/cursos/so/Projetos/AntonioMenezes.pdf