Sei sulla pagina 1di 16

Departamento de Educao e Ensino a Distncia

Ps - Graduao em Gesto de Sistemas e Tecnologias de Informao

O sistema operativo
Emanuel Agostinho Sebastio Mateus Bernardo Cangulo

Trabalho apresentado no mbito da disciplina de Sistemas Operativos e Infra-Estruturas Tecnolgicas.

Professor: Doutor Mrio Macedo

Luanda, 1 de Maio de 2010 1

Resumo . Abstract Keyword .. Introduo .. Sistema operativo Principais componentes de um sistema operativo . Gesto de recursos (SO) .. Tipos de Kernel ... Tipo de Sistemas Operativos . Processamento Processos . Importncia dos processos no tunning do Sistema Operativo Exemplos de Sistemas Operacionais Activos Referncia

3 3 3 4 5 6 7 8 9 10 11 14 15 16

Resumo

O presente trabalho consiste em efectuar um resumo sobre os principais componentes de um sistema operativo e descrio das suas funes bem com os diferentes tipos de sistemas operativos orientados para ambientes especficos de processamento e suas principais diferenas. Com este trabalho tambm se pretende descrever o conceito de processos e importncia das suas caractersticas no tunning do sistema operativo

Palavras chave Sistema operativo, processos, arquitecturas, processamento.

Abstract

The present work is to provide an overview of the main components of an operating system and description of their functions well with the different types of operating systems targeted to specific environments and processing their differences. This work is also intended to describe the process concept and importance of their characteristics in the tuning of the operating system.

Keywords
Operating systems, processes, architectures, processing.

Introduo Nesta sociedade globalizada em que vivemos possvel encontrar o computador ou dispositivos similares e telemveis nos mais variados contextos, que vo desde o empresarial, acadmico e at caseiro. Estes dispositivos servem para inovar e simplificar as nossas vidas e no h como fugir desta realidade tecnolgica. A cada dia que passa, a informtica ou os sistemas de informao vem adquirindo cada vez mais relevncia na vida das pessoas, no entanto quando falamos de computadores ou dispositivos similares importante ter em conta que estes dispositivos electrnicos so compostos por hardware e software. No entanto existe um tipo de software especifico que controla todo comportamento destes dispositivos que da pelo de Sistema Operativo. importante conhecer o que o sistema operativo e quais so os seus componentes, bem como ter uma viso geral sobre a forma como o mesmo interage com os demais componentes.

Sistema operativo Sistema operativo um programa ou um conjunto de programas que age como intermedirio entre o utilizador e mquina fsica. Ela tem como objectivo principal gerir todos os recursos do sistema, tais como processador, memria, sistemas de arquivos, perifricos de entrada e sada, segurana de acesso dos usurios e gesto de redes. Ela tambm responsvel por fornecer uma interface entre o computador e o usurio. Um sistema operativo pode ser visto como um programa de grande complexidade que interage com vrios subprogramas cujo objectivo final gerir o normal funcionamento de uma mquina desde a parte do hardware ao software. Os sistemas Operativos dos Super Computadores foram inicialmente concebidos para optimizarem o hardware existente nas respectivas mquinas, por sua vez os sistemas operativos dos PC foram concebidos para que o utilizador possa tirar o mximo rendimento possvel tendo em contas as suas actividades dirias e profissional [1].

Principais componentes de um sistema operativo

Os principais componentes do sistema operacional so Kernel e Shell.

Ncleo (kernel) Parte interna que possui os mdulos de software (programas) bsicos que permitem o normal Funcionamento do sistema operativo. Ela implementa uma camada de abstraco ao nvel mais baixo para a gesto dos recursos (especialmente processadores e dispositivos de entrada/sada) que os mdulos de softwares aplicativos devem controlar para desempenharem com sucesso as actividades para as quais foram projectados [2]. Interface de acesso (shell) Shell um mdulo de software que fornece uma interface para os usurios um sistema operacional que permite o acesso aos servios de um kernel. a interface entre utilizadores e ncleo do sistema operativo. Shell tambm conhecido como o interpretador de comandos digitados pelos utilizadores utilizadores. Pode-se se dizer que existem duas categorias de shell: Linha de comando e grfica. Linha de comando fornece uma interface de linha de comando (CLI), (CLI) enquanto a outra fornece uma interface erface grfica de usurio (GUI) [2].

Gesto de recursos (SO)


Recursos Processador Funcionalidades
Gere a execuo dos processos no CPU. Cria, Exclui, Suspende e Finaliza processos. Define prioridades dos processos.

Memrias

Organiza e gere o espao de memria principal onde os programas e dados so armazenados para o processamento. Mantm um registo sobre os endereos esto sendo utilizados bem como a sua disponibilidade. Aloca e Libera endereos de memria para os programas. Prover proteco da memria para impedir que um processo utilize um endereo de memria que no lhe pertena. Assegurar que cada processo tenha seu prprio espao de endereamento, comeando em zero, para evitar ou resolver o problema de relocao.

Perifricos

Gesto de dispositivos Entrada/Sada de Dados (I/O). Permite a utilizao de forma transparente dos diversos dispositivos de entrada/sada. Controla drivers de dispositivos (software) e Controladores de Dispositivos (hardware).

Segurana de acesso dos utilizadores

Controle de autenticao e acessos de usurios. Registar tudo que ocorre na sesso de acesso (log do sistema). Mantm as permisses de acesso de cada recurso do sistema.

Redes

Mantm o controlo de acesso aos recursos compartilhados de uma rede de computadores. Partilha recursos de hardware e software de forma segura e fivel. Partilha de recursos relacionados com a impresso ou acesso Internet, etc.

Tipos de Kernel kernels monolticos Fornecem abstraces ricas e poderosas do hardware subjacente.

Microkernels Fornecem um pequeno conjunto de abstraces de hardware e aplicativos de uso simples chamados de servidores para dar mais funcionalidade.

Hybrid (modificado microkernels) So muito parecidos com microkernels puro, excepto que elas incluem algum cdigo adicional em kernelspace para aumentar o desempenho.

Exokernels Ffornecem abstraces mnima, permitindo o acesso de hardware de baixo nvel. Em sistemas exokernel, sistemas operacionais biblioteca fornecer as abstraces normalmente presentes em kernels monolticos.

Tipo de Sistemas Operativos Quanto ao tipo de sistemas operativos podemos distinguir os seguintes: -Monoprogramveis / Monotarefas -Multiprogramveis/ Multitarefa -Mltiplos Processadores

Monotarefa Os SO executam apenas uma tarefa de cada vez. Por exemplo, se utiliza um processador de texto e se pretende fazer um desenho, tem que se fechar o processador de texto e abrir a folha de clculo. Exemplo de SO: O MS-DOS

Multitarefa Os SO executam dois ou mais programas em simultneo. Na verdade o que o processador faz atribuir fraces de tempo aos programas que esto a executar. Existem diferentes tcnicas de monotarefa. Multitarefa cooperativa Executa dois ou mais programas em simultneo mas o programa que est em primeiro plano tem controlo sobre o processador. Neste caso se este programa falhar bloqueia o computador e tem que ser reiniciado. Exemplo de SO: Windows 3.x e verses anteriores ao Mac OS 8. Multitarefa preemptiva o processador que controla a execuo dos programas, desta forma permite ao sistema operativo recuperar o controlo caso um programa bloqueie. O utilizador perde os trabalhos do programa que falhou mas os restantes programas continuam a trabalhar. Exemplo de SO: Unix; Linux; Windows 95 e superiores; MAC OS 8 e superiores; etc. Multitarefa multithreading Executa mais que uma tarefa do mesmo programa. Os programas criam threads, ou seja, tarefas distintas que executam determinadas funes dentro do mesmo programa. Por exemplo, quando conversamos no messenger, outra thread est a escutar se algum est a falar connosco. Os mais recentes SO utilizam este tipo de multitarefa.
9

Processamento
Quanto ao processamento podemos distinguir os seguintes sistemas: Batch Time Sharing Real Time Multithreading.

Sistemas Batch Foram os primeiros tipos de sistemas operativos multiprogramveis. O processamento batch tem a caracterstica de no exigir a interaco do usurio com a aplicao. Sistemas de Tempo Compartilhado (Time Sharing) Permitem que diversos programas sejam executados a partir da diviso do tempo do processador em pequenos intervalos, denominados fatias de tempo (time-slice).

Sistemas de Tempo Real (Real Time) Enquanto em sistemas de tempo compartilhado o tempo de resposta pode variar sem comprometer as aplicaes em execuo, nos sistemas de tempo real os tempos de resposta devem estar dentro de limites rgidos, que devem ser obedecidos, caso contrrio podero ocorrer problemas irreparveis.

Sistemas com Mltiplos Processadores Caracterizam-se por possuir duas ou mais CPUs interligadas e trabalhando em conjunto. As principais caractersticas desses sistemas so: Escalabilidade Disponibilidade Balanceamento de Carga

10

Processos
Um Processo, no contexto da informtica, um programa de computador em execuo. Em sistemas operacionais, processo um mdulo executvel nico, que corre concorrentemente com outros mdulos executveis. Por exemplo, em um ambiente multitarefa (como o Unix) que suporta processos, um processador de texto, um navegador e um sistema de banco de dados so processos separados que podem rodar concomitantemente. Processos so mdulos separados e carregveis ao contrrio de threads, que no podem ser carregadas. Mltiplos threads de execuo podem ocorrer dentro de um mesmo processo. Alm dos threads, o processo tambm inclui certos recursos, como arquivos e alocaes dinmicas de memria e espaos de endereamento [3]. A comunicao entre processos o grupo de mecanismos que permite aos processos transferirem informao entre si. A capacidade de um sistema operacional executar simultaneamente dois ou mais processos chamada multiprocessamento. Se existirem dois ou mais processos executados em simultneo e disputam o acesso a recursos partilhados, problemas da concorrncia podem ocorrer. Estes problemas podem ser resolvidos pelo gerenciamento adequado de mltiplas linhas de execuo ou processos atravs da sincronizao (multitarefa) ou por outros recursos (como a troca de contexto). Processo a entidade lgica que se comporta como uma mquina virtual executando um programa.

Funes da gesto de processos: 1. Definio do processo a executar e quando interromper a execuo 2. Controlar a partilha dos recursos do computador pelos processos

11

Estados de processos

No-Submetido o processo que ainda no fora submetido ao CPU, est nas mos do usurio. At onde interessa ao sistema ele no existe, porque o usurio ainda no o submeteu. Ele simplesmente apresentado como sendo o primeiro passo na vida de um processo. O Sistema Operativo, naturalmente, no reconhece esse estado.. Pode por exemplo, ser um arquivo executvel que est armazenado no disco duro. Suspenso o processo que j foi submetido, porm permanece suspenso at que o horrio ou evento programado ao usurio venha acontecer. Processo suspenso aquele que esta no aguarde de uma entrada de dados Pronto O processo j foi submetido e est pronto para receber a CPU, porm ainda guarda o escalonador de processos para ter controle da CPU. Processos que esto em modo de esperando E/S no se aplicam a esse estado.

12

Executando A execuo propriamente dita. O cdigo est sendo processado. Se ocorrer durante a execuo uma requisio de E/S o processo colocado no estado de espera e outro processo da fila de prontos poder ento concorrer a CPU. Espera o processo que foi colocado na fila de espera de E/S devido ao processador de E/S ser mais lento que a CPU principal. O processo tornaria a CPU mais escrava dele se no houvesse esse estado, pois como ele no est concorrendo CPU ao executar um E/S, pode-se ento coloc-lo no estado de espera para que os demais processos do estado pronto possam concorrer a CPU. Completo Neste estado temos a finalizao do processo.

13

Importncia dos processos no tunning do sistema operativo

Tal como acontece noutros tipos de sistemas, para que o sistema operativo funcione correctamente deve-se ao longo do tempo realizar-se determinados ajustes ao mesmo. O acesso concorrente a dados partilhados pode criar situaes de inconsistncia desses dados, logo a manuteno correctiva requer mecanismos que assegurem a execuo ordenada e correcta dos processos cooperantes. O tunnig dos processos tm uma importncia vital no desempenho do sistema operativo, pois evitam que problemas do tipo starvation, deadlock e inconsistncia ou corrupo de dados possam ocorrer. E nos casos em que os respectivos problemas possam ocorrer o sistema operativo esteja preparado para lidar com tais problemas. Por outro lado o tunning permite sincronizar os processos impedindo situaes em que vrios processos acedem e manipulam dados partilhados simultaneamente, deixando os dados num estado de possvel inconsistncia. Descrio dos problemas: Starvation Surge em consequncia da poltica de escalonamento da UCP, um recurso passa alternadamente dum processo para um outro, deixando um terceiro processo indefinidamente bloqueado sem acesso ao recurso. Surge quando 2 processos se bloqueiam mutuamente.

Deadlock

Exemplo: o processo P1 acede ao recurso R1, e o processo P2 acede ao recurso R2; a uma dada altura P1 necessita de R2 e P2 de R1 Surge quando dois processos que tem acesso a uma mesma Inconsistncia/Corrupo estrutura de dados no devem poder actualiz-la sem que haja de dados algum processo de sincronizao no acesso. Exemplo: a interrupo de um processo durante a actualizao de uma estrutura de dados pode deix-la num estado de inconsistncia.

14

Exemplos de sistemas operacionais activos Windows XP Mac OS X Linux Solaris FreeBSD Haiku eComStation FreeDOS Unix System V MINIX OpenBSD NetBSD DragonflyBSD MenuetOS Google Chrome OS Windows Symbian OS

15

Referncias [1]. Silberschatz, Galvin, Operating.System.Concepts.7th Edition, John Wiley, 2005. [2] http://www.dcc.ufam.edu.br/~msevalho/ensino/iec981t2 [PDF] Marco Aurlio Sevalho, M.Sc, Universidade Federal do Amazonas - UFAM Instituto de Cincias Exactas ICE Departamento de Cincia da Computao DCC (Acessado em 1 de Maio de 2010)
[3] http://pt.wikipedia.org/wiki/Processo_%28inform%C3%A1tica%29 (Acessado em 06 de Maio de

2010). STALLINGS, William. Operating systems: internals and design principles. 5th Edition, Pearson Prentice Hall. 2004. Stallings, William, Computer Organization & Architecture, 7th Edition, Pearson, 2006. ESCE, Introduo s Cincias da Computao, Setbal: Gesto Sistemas de Informao, 2009 William Shay , Sistemas Operacionais, So Paulo, Makron Books, 1996

http://www.personal.kent.edu/~rmuhamma/OpSystems/Myos/sysComponent.htm (Acessado em 1 de Maio de 2010)

16

Potrebbero piacerti anche