Вы находитесь на странице: 1из 6

Sistemas Operacionais

Sistema Operacional um programa que gerencia os dispositivos (Placa de vdeo, som, modem, teclado, cdrom, mouse, etc) e arquivos (aplicativos, textos, figuras, etc) da maquina(computador), como, por exemplo, o Windows e o Linux, ele, tambm, quem traduz o que o usurio quer fazer para a linguagem que o computador entende, nmeros binrios( 0 "zeros"e 1 "uns").

Histria
Pode parecer, atualmente, difcil de imaginar um computador monotarefa que apenas permita utilizar uma aplicao mas, de fato, houve um percurso histrico notvel at se atingir o nvel atual de paralelizao de processos. Com efeito, os primeiros computadores apenas permitiam executar uma nica tarefa de cada vez. O DOS um excelente exemplo disso, j que foi um dos primeiros sistemas operativos para computadores pessoais. O passo seguinte para a multitarefa foi a criao dos TSR's (Terminate and Stay Resident), que eram pequenos programas que permaneciam em memria enquanto se executava outro programa, e que eram ativados mediante combinaes de tecla. Ou seja, estando o utilizador a escrever um texto num processador de texto, por exemplo, podia chamar uma agenda pessoal para tirar notas mediante uma combinao de teclas (que dependia do programa usado). Assim, do ponto de vista do processador, o processo do processador de texto era bloqueado e passava-se o controlo para a agenda. Quando o utilizador terminasse, voltava-se ao processador. Ambos programas coexistiam, mas no podiam ser executados em simultneo. O seguinte passo foi a emulao de multitarefa. Exemplos disto eram as primeiras verses de Windows, em que este corria sobre DOS (monotarefa), mas o ncleo do programa tratava de fazer a sua prpria gesto dos processos. Curiosamente, se um processo bloqueasse o Windows, todas as aplicaes teriam que ser terminadas pois eram todas dependentes. Posteriormente, surgiu uma das principais componentes dos SO atuais: o escalonador de processos, ou (em ingls) scheduler, que faria a gesto, qualificao e o gerenciamento de prioridade dos processos sem afetar o ncleo do sistema operativo. Ou seja, todas as tarefas kernel so crticas, e todo o tempo que sobrar legado aos processos. Adivinha-se, portanto, a necessidade de estabilizar o kernel, por forma a minimizar o tempo de execuo de tarefas internas. O escalonador de processos uma componente muito polemica em termos de inovao e de aplicaes. Dependendo das situaes, um escalonador de processos deve gerir os seus processos por forma a diminuir a latncia entre aplicaes interativas, ou assegurar a coerncia em termos de critrios no escalonamento: se uma tarefa no crtica, ento no devia estar a ser executada.

Kernel
Na informtica o kernel (conhecido tambm como ncleo) a parte fundamental de um sistema operacional. o software responsvel em facilitar acesso seguro ao hardware por programas diferentes. Como existem vrios programas e o acesso do hardware limitado, o ncleo tambm se encarrega de decidir qual programa poder usar de um dispositivo de hardware especifico e durante quanto tempo este poder ser usado (o que conhecido como multiplexao). Necessariamente no se precisa de um ncleo para usar um computador. Os programas podem ser carregados e executados diretamente em um computador vazio, sempre que seus autores queiram desenvolvlos sem usar nenhuma abstrao de hardware nem nenhuma ajuda do sistema operacional. Esta era a forma normal de se usar muitos dos primeiros computadores: para usar programas diferentes era preciso reiniciar e reconfigurar o computador cada vez. Com o tempo, se comeou a deixar em memria (ainda entre distintas execues) pequenos programas auxiliares, como o Carregador e o depurador, ou se carregavam apartir memoria_somente_de_leitura. A medida que foram se desenvolvendo, se converteram na base do que chegariam a ser os primeiros ncleos do sistema operacional. Existem quatro tipos principais de ncleos: -Os ''ncleos monolticos'' facilitam abstraes do hardware subjacente realmente potentes e variadas. -Os ''microncleos'' (ou microkernel) proporcionam um pequeno conjunto de abstraes simples do hardware e usam as aplicaes chamadas servidores para oferecer maior funo. -Os ''hbridos'' (''microncleos modificados'') so muito parecidos com os microncleos puros, com a exceo de inclurem um cdigo adicional no espao do ncleo para que se execute com maior velocidade. -Os ''exoncleos'' no facilitam nenhuma abstrao, mas permitem o uso de bibliotecas que proporcionam maior funo graas ao acesso direto ou quase direto ao hardware. Exoncleos Os exoncleos, tambm conhecidos como sistemas operacionais verticalmente estruturados, representam uma aproximao radicalmente nova ao desenvolvimento de sistemas operacionais. A idia permitir que o desenvolvedor tome todas as decises relativas ao rendimento do hardware. Os exoncleos so extremamente pequenos, j que sua funo se limita proteo e multiplexao dos recursos. Os desenvolvimentos de ncleos clssicos (tanto o monoltico como o microncleo) abstraem o hardware, escondendo os recursos atravs da abstrao do hardware, ou detrs dos controladores do dispositivo. Nos sistemas clssicos, usando a memria fsica, ningum poder afirmar qual sua real localizao, por exemplo. A finalidade de um exoncleo permitir uma aplicao que solicite uma regio especfica da memria, simplesmente assegurar que os recursos pedidos esto disponveis e que o programa tem direito a acess-los. Pelo fato do exoncleo proporcionar uma interface de baixo nvel ao hardware, carecendo de todas as funes de alto nvel dos outros sistemas operacionais, ele complementado por uma biblioteca de sistema operacional. Esta biblioteca se comunica com o exoncleo subjacente e facilita aos programadores de aplicativos com funes que so comuns em outros sistemas operacionais. Algumas das implicaes tericas de um sistema exoncleo que possvel ter distintos tipos de sistemas operacionais (p.e. Windows, Unix) sendo executado em apenas um exoncleo e que os desenvolvedores podem escolher prescindir ou incrementar funes por motivos de rendimento.

Tipos de multitarefa
Existem dois tipos Antecipao e Cooperao. de sistemas operativos de multitarefa:

-Antecipao Os sistemas operativos com esta qualidade de multitarefa esforam-se por conseguir uma "democratizao" dentro do processador. Os seus kernels mantm em memria um registro de todos os processos em execuo (esse registro chama-se rvore de processos, em virtude de os processos estarem ligados uns aos outros como os ramos de uma rvore). Entre outros atributos acerca de cada processo, essa "rvore" inclui uma informao de prioridade (chamada "nice" nos sistemas Unixlike e simplesmente "Priority" nos Windows NT), com a qual o kernel calcula o tempo de CPU que deve dar a cada processo. Quando esse tempo acaba, o kernel tira o controlo da CPU ao processo e d-o ao processo que vem a seguir na fila. Quando a fila acaba, o kernel volta a dar o controlo da CPU ao primeiro processo, fechando assim o ciclo. Exemplos: Unix Linux BSD Mac OS X Windows NT4 e posteriores Hurd ReactOS -Cooperao A multitarefa de cooperao pouco difere do outro sistema, a nica diferena que nesta no h controlo sobre o tempo de CPU que cada processo consome: dado o controlo da CPU ao processo, e ele s o devolve quando estiver pronto... Quase nenhum sistema operativo moderno utiliza este modelo de multiprocessamento, atualmente mais utilizado o sistema descrito acima pois assim consegue-se evitar que um processo que bloqueie leve o sistema todo consigo, incluindo eventuais documentos no guardados. Os sistemas operativos com este modelo de multitarefa so freqentemente chamados sistemas operativos com alternncia de tarefas (em ingls, task-switching). Alguns Sistemas Operacionais O que muitos no sabem q existem outros Sistemas Operacionais alm do Windows e Linux, assim como:

Tron
Ken Sakamura, at agora desconhecido engenheiro japons desenvolveu um sistema operacional mais adotado do que o Windows, o Tron que est presente em quatro bilhes de equipamentos. Tron usado para garantir o funcionamento de uma gama enorme de aparelhos (de cmeras digitais a motores de automveis) da mesma forma como o Windows controla os computadores. O que coloca Tron e Windows - e as fortunas de Sakamura e Gates - em lados completamente diferentes que, ao contrrio do Windows, que precisa ser comprado da Microsoft, o Tron gratuito. Se o desenvolvedor japons tivesse cobrado um centavo por cada uso do Tron, ele seria bilionrio, possivelmente comparado ao fundador da Microsoft, que tem sua fortuna estimada em US$ 43 bilhes, segundo a revista Forbes.

Storm
Software feito por dois adolescentes franceses. um software bem simples, se compararmos com os mais atuais, e com idias bem simples tambm, mas consistente. O usurio no precisa conhecer nada, exceto instalao de programas. Ele roda junto com o Windows, mas necessita do DOS; por isso, seu objetivo simplesmente dar uma nova interface para seu computador. No necessrio particionar o disco, pois s ocupa 10Mb, mas no h nada sobre suporte a programas. Nenhuma palavra, tambm, sobre a licena.

OpenVMS
O OpenVMS um sistema operacional multiprogramvel e multiusurio utilizado em ambientes de processamento comercial e cientfico que suporta diversos estilos de operao, incluindo tempo compartilhado, tempo real e at mesmo processamento de transaes online. O sistema foi projetado para operar em plataformas VAX (CISC) e Alpha AXP (RISC) e possui como principais caractersticas: implementao em ambientes cliente-servidor; processamento em modo batch; processamento de aplicaes em tempo real; interface de comandos e Windows; compatibilidade de cdigos fonte interplataformas; linguagem de controle sofisticada; implementao em sistemas com multiprocessamento simtrico (SMP); implementao de sistemas tolerantes falha; funcionalidades de sistemas abertos; kernel do sistema operacional suportado por system services. O processo no OpenVMS pode ser dividido em quatro partes distintas: imagem, contexto de software, contexto de hardware e espao de endereamento virtual. Na terminologia da Digital, uma imagem o resultado da compilao de um programa fonte em qualquer linguagem de alto nvel, ou seja, um programa executvel. Para que uma imagem possa ser executada, ela necessita de recursos do sistema, como privilgios e quotas. A totalidade desses recursos pode ser entendida como sendo o processo. A imagem sempre executada no contexto de um processo. O contexto de software identifica o processo, seu dono, privilgios e quotas de recursos do sistema. Neste ambiente determinado o que o processo pode ou no fazer, como, por exemplo, o nmero mximo de arquivos abertos simultaneamente. O contexto de hardware armazena o contedo dos registradores gerais e do registrador de status. Com estas informaes possvel que um processo tenha sua execuo interrompida temporariamente, retornando posteriormente sem nenhum problema. O espao de endereamento virtual consiste em uma seqncia de endereos que uma imagem pode referenciar no intervalo entre 0 e 2 nos processadores VAX e de 0 a 2^64 nos Alpha AXP. O mecanismo de memria virtual implementa todo esse espao de endereamento utilizando a memria principal e a secundria. Um processo pode criar outros processos, dependentes ou no de seu criador. Quando depende do seu criador, um processo definido como subprocesso; no caso de ser independente, chamado detached. Um subprocesso compartilha quotas com o processo pai. Alm disso, caso o processo pai deixe de existir, o subprocesso tambm eliminado. Diferentemente do subprocesso, processos detached no dependem da existncia permanente do processo criador.

Mit Exokernel Os
Sistema Operacional criado com um conceito diferente, o de exokernel. Quer dizer, o kernel acaba se tornando somente uma aplicao, a que responsvel pela segurana do sistema. O gerenciamento do Hardware acaba sendo feito pelos prprios aplicativos. A vantagem seria um aumento importante na rapidez de processamento. O mais novo exokernel desenvolvido pelo MIT chama-se XOK, roda em computador e usa uma biblioteca chamada ExOS. Essa biblioteca permite que aplicativos Unix, como GCC, Pearl e Telnet, funcionem normalmente. Os desenvolvedores falam at em ganhos de 8 vezes de performance em comparao com outros tipos de kernel.

OS/2
O OS/2 tem arquivos de configurao semelhantes ao DOS, um Config.sys e um Autoexec.bat (usado apenas para as sesses DOS). Ele tem uma linha de comando com Dir, Copy, Del e outros comandos. Sua interface grfica muito parecida com a do Windows primeira. Ele se parece superficialmente com o DOS principalmente em virtude do seu objetivo inicial de ser o substituto da IBM/Microsoft para o velho DOS. A bem da verdade, os sistemas de tecnologia de ponta so todos muito parecidos, no Unix os comandos so diferentes, mas a sintaxe praticamente a mesma. As diferenas esto nos detalhes e talvez por isso o usurio final (atento apenas superfcie) tenha ficado tanto tempo do lado de fora da tecnologia. O OS/2 tem 150 comandos de linha de comando prprios (alm do 150 que existem no DOS) usados para controlar multitarefa e certas configuraes que no podem existir no DOS e que sua interface grfica orientada a objetos de fato. Na linha de comando do OS/2 a memria plana at 512 MB. No vai a 4 GB por motivos de compatibilidade. Esta linha de comando conta com uma linguagem batch muito usada em mainframes.Esta linguagem semelhante em poder e facilidade ao Pascal. A sua integrao aos recursos avanados do sistema grande sendo capaz no s de funcionar em multithreading (em modo texto) com tambm pode usar objetos da interface grfica e interagir com esta (estes recursos esto plenamente disponveis desde 1992). Nem mesmo o Unix dispe de uma linha de comando to poderosa, uma vez que esta no integrada satisfatoriamente interface orientada a objetos (da qual a interface grfica apenas a parte visvel). Os sistema de arquivos usa o HPFS (embora possa usar normalmente e ao mesmo tempo a FAT) que parcialmente orientado a objetos, capaz de se auto-desfragmentar e tem grande capacidade de recuperao a falhas e velocidade de localizao de arquivos. Utiliza nomes longos reais. A prxima verso poder ainda usar um JFS (Journaled File System) semelhante ao do AIX (Unix da IBM) que permite ainda maior capacidade de recuperao de falhas e mais orientao a objetos. Existe ainda verso do OS/2 que usa a tecnologia Micro Kernel (das universidades Berkley/Carnegie Mellow) sendo capaz de realizar multiprocessamento at 64 processadores, alcanando uma escalabilidade apenas comparvel ao do Unix.