Buscar

Sistemas Operacionais - Sistema Operativo ou Operacional

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Sistema Operativo/Operacional 
Sistema operativo (pt) ou operacional (pt-BR) (em inglês: Operating System - OS) é 
um programa ou um conjunto de programas cuja função é gerenciar os recursos do sistema 
(definir qual programa recebe atenção do processador, gerenciar memória, criar um sistema 
de arquivos, etc.), fornecendo uma interface entre o computador e o usuário. Embora possa 
ser executado imediatamente após a máquina ser ligada, a maioria dos computadores 
pessoais de hoje o executa através de outro programa armazenado em uma memória não-
volátil ROM chamado BIOS num processo chamado "bootstrapping", conceito em inglês 
usado para designar processos auto-sustentáveis, ou seja, capazes de prosseguirem sem 
ajuda externa. Após executar testes e iniciar os componentes da máquina (monitores, 
discos, etc), o BIOS procura pelo sistema operacional em alguma unidade de 
armazenamento, geralmente o Disco Rígido, e a partir daí, o sistema operacional "toma" o 
controle da máquina. O sistema operacional reveza sua execução com a de outros 
programas, como se estivesse vigiando, controlando e orquestrando todo o processo 
computacional. 
 
Segundo Tanenbaum,[1], pela perspectiva do usuário ou programador, existem dois modos 
distintos de conceituar um sistema operacional: 
• numa visão de cima para baixo (top-down): é uma abstração do hardware, fazendo o 
papel de intermediário entre os programas (software) e os componentes físicos do 
computador (hardware); ou 
• numa visão de baixo para cima (bottom-up): é um gerenciador de recursos, i.e., que 
controla as aplicações (processos) a executar, como, quando e com quais recursos 
(memória, disco, periféricos). 
Um sistema operacional é projetado para ocultar as particularidades de hardware (ditas "de 
baixo nível") e, com sua atuação, criar uma máquina abstrata que fornece às aplicações 
serviços compreensíveis ao usuário (ditas "de alto nível")[ 
História[editar | editar código-fonte] 
 
Sistema operacional em linha de comando. 
https://pt.wikipedia.org/wiki/Portugu%C3%AAs_europeu
https://pt.wikipedia.org/wiki/Portugu%C3%AAs_brasileiro
https://pt.wikipedia.org/wiki/L%C3%ADngua_inglesa
https://pt.wikipedia.org/wiki/Programa_de_computador
https://pt.wikipedia.org/wiki/Unidade_central_de_processamento
https://pt.wikipedia.org/wiki/Gerenciamento_de_mem%C3%B3ria
https://pt.wikipedia.org/wiki/Sistema_de_arquivos
https://pt.wikipedia.org/wiki/Sistema_de_arquivos
https://pt.wikipedia.org/wiki/Interface
https://pt.wikipedia.org/wiki/Computador
https://pt.wikipedia.org/wiki/Usu%C3%A1rio
https://pt.wikipedia.org/wiki/ROM
https://pt.wikipedia.org/wiki/BIOS
https://pt.wikipedia.org/wiki/Bootstrapping
https://pt.wikipedia.org/wiki/Sistema_operativo#cite_note-1
https://pt.wikipedia.org/wiki/Hardware
https://pt.wikipedia.org/wiki/Software
https://pt.wikipedia.org/wiki/Hardware
https://pt.wikipedia.org/wiki/Processo_(inform%C3%A1tica)
https://pt.wikipedia.org/wiki/Hardware
https://pt.wikipedia.org/wiki/Sistema_operativo#cite_note-2
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=1
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=1
https://pt.wikipedia.org/wiki/Ficheiro:Bash_demo.png
Na primeira geração (aproximadamente 1945-1955), os computadores eram tão grandes 
que ocupavam salas imensas, ou mesmo andares inteiros. Foram basicamente construídos 
com válvulas e painéis, e os sistemas operacionais "não existiam". Os programadores, que 
também eram os operadores, controlavam o computador por meio de chaves, fios e luzes 
de aviso. 
Nomes como Howard Aiken (Harvard), John von Neumann (Instituto de Estudos Avançados 
de Princeton), John Adam Presper Eckert Jr e William Mauchley (Universidade da 
Pennsylvania) e Konrad Zuse (Alemanha) formaram, com suas contribuições, a base 
humana para o sucesso na construção dos computadores primitivos. Na geração seguinte 
(aproximadamente 1955-1965), foram criados os sistemas em lote (batch systems), que 
permitiram melhor uso dos recursos computacionais. A base do sistema operacional era um 
programa monitor, usado para enfileirar tarefas (jobs). O usuário foi afastado do computador; 
cada programa era escrito em cartões perfurados, que por sua vez eram carregados, 
juntamente com o respectivo compilador (normalmente Fortran ou Cobol), por um operador, 
que por sua vez usava uma linguagem de controle chamada JCL (job control language). 
No início da computação os primeiros sistemas operacionais eram únicos, pois 
cada mainframe vendido necessitava de um sistema operacional específico. Esse problema 
era resultado de arquiteturas diferentes e da linguagem que cada máquina utilizava. Após 
essa fase, iniciou-se a pesquisa de sistemas operacionais que automatizassem a troca de 
tarefas (jobs), pois os sistemas eram monousuários e tinham cartões perfurados como 
entrada (eliminando, assim, o trabalho de pessoas que eram contratadas apenas para trocar 
os cartões perfurados). 
Diz-se que Alan Turing era um mestre nos primeiros Manchester Mark I, e ele já estava 
derivando a concepção primitiva de um sistema operacional a partir dos princípios 
da máquina de Turing universal.[3] 
Um dos primeiros sistemas operacionais de propósito geral foi o CTSS, desenvolvido 
no MIT. Após o CTSS, o MIT, os laboratórios Bell da AT&T e a General 
Electric desenvolveram o Multics, cujo objetivo era suportar centenas de usuários. Apesar 
do fracasso comercial, o Multics serviu como base para o estudo e desenvolvimento de 
sistemas operacionais. Um dos desenvolvedores do Multics, que trabalhava para a Bell, Ken 
Thompson, começou a reescrever o Multics num conceito menos ambicioso, criando o Unics 
(em 1969), que mais tarde passou a chamar-se Unix. Os sistemas operacionais eram 
geralmente programandos em assembly, até mesmo o Unix em seu início. Então, Dennis 
Ritchie (também da Bell) criou a linguagem C a partir da linguagem B, que havia sido criada 
por Thompson. Finalmente, Thompson e Ritchie reescreveram o Unix em C. O Unix criou 
um ecossistema de versões, onde destacam-se: System V e derivados (HP-UX, AIX); 
família BSD (FreeBSD, NetBSD, OpenBSD, etc.), Linux e até o Mac OS X (que deriva 
do Mach e FreeBSD). O BSD foi lançado em 1977, sendo ele um sistema operacional 
fortemente baseado no Unix, focado principalmente para a execução em máquinas 
específicas de alto desempenho, como o famoso computador VAX, o qual foi uma referência 
de hardware na época. 
Durante a década de 70, o Unix foi distribuído gratuitamente (incluindo seu código fonte) 
para universidades e órgãos governamentais norte-americanos, o que conferiu muita 
popularidade a este sistema. Sua interface era totalmente em modo texto, sem interface 
gráfica. Quando começaram a aparecer os computadores pessoais, houve a necessidade 
de um sistema operacional de utilização mais fácil. Em 1980, William (Bill) Gates e seu 
colega de faculdade, Paul Allen, fundadores da Microsoft, compram o 
sistema QDOS ("Quick and Dirty Operating System") de Tim Paterson por $50.000, 
batizam-no de MS-DOS (Microsoft Disk Operating System). O DOS original, de 
desenvolvimento da IBM, foi o sistema operativo que a IBM apresentou aquando do 
lançamento do primeiro PC, vendeu muitas cópias, como o sistema operativo 
nos computadores pessoais desenvolvidos pela IBM. IBM convidou a Microsoft para uma 
parceria para o desenvolvimento da versão 2 do IBM OS/2, um sistema operacional. Após 
o fim da breve parceria a IBM seguiu sozinha com o desenvolvimento do OS/2 a que deu o 
nome de OS/2 Warp, concorrendo directamente com o MS Windows95. 
https://pt.wikipedia.org/wiki/Fortran
https://pt.wikipedia.org/wiki/Cobol
https://pt.wikipedia.org/wiki/Mainframe
https://pt.wikipedia.org/wiki/Alan_Turing
https://pt.wikipedia.org/wiki/Manchester_Mark_I
https://pt.wikipedia.org/wiki/M%C3%A1quina_de_Turing_universal
https://pt.wikipedia.org/wiki/Sistema_operativo#cite_note-google4-3
https://pt.wikipedia.org/wiki/CTSS
https://pt.wikipedia.org/wiki/MIThttps://pt.wikipedia.org/wiki/Laborat%C3%B3rios_Bell
https://pt.wikipedia.org/wiki/AT%26T
https://pt.wikipedia.org/wiki/General_Electric
https://pt.wikipedia.org/wiki/General_Electric
https://pt.wikipedia.org/wiki/Multics
https://pt.wikipedia.org/wiki/Ken_Thompson
https://pt.wikipedia.org/wiki/Ken_Thompson
https://pt.wikipedia.org/wiki/Unix
https://pt.wikipedia.org/wiki/Dennis_Ritchie
https://pt.wikipedia.org/wiki/Dennis_Ritchie
https://pt.wikipedia.org/wiki/Linguagem_C
https://pt.wikipedia.org/wiki/Linguagem_B
https://pt.wikipedia.org/wiki/Berkeley_Software_Distribution
https://pt.wikipedia.org/wiki/FreeBSD
https://pt.wikipedia.org/wiki/NetBSD
https://pt.wikipedia.org/wiki/OpenBSD
https://pt.wikipedia.org/wiki/Linux
https://pt.wikipedia.org/wiki/Mac_OS_X
https://pt.wikipedia.org/wiki/Mach_(n%C3%BAcleo)
https://pt.wikipedia.org/wiki/D%C3%A9cada_de_1970
https://pt.wikipedia.org/wiki/Computador_pessoal
https://pt.wikipedia.org/wiki/1980
https://pt.wikipedia.org/wiki/Bill_Gates
https://pt.wikipedia.org/wiki/Paul_Allen
https://pt.wikipedia.org/wiki/Microsoft
https://pt.wikipedia.org/wiki/QDOS
https://pt.wikipedia.org/wiki/Tim_Paterson
https://pt.wikipedia.org/wiki/MS-DOS
https://pt.wikipedia.org/wiki/IBM_PC
https://pt.wikipedia.org/wiki/OS/2
No começo da década de 1990, um estudante de computação finlandês postou um 
comentário numa lista de discussão da Usenet dizendo que estava desenvolvendo um 
núcleo de sistema operacional e perguntou se alguém gostaria de auxiliá-lo na tarefa. Este 
estudante chamava-se Linus Torvalds e o primeiro passo em direção ao tão conhecido Linux 
foi dado naquele momento. 
Visão geral[editar | editar código-fonte] 
Existem vários sistemas operativos; entre eles, os mais utilizados no dia a dia, normalmente 
utilizados em computadores domésticos, são o Windows, Linux e macOS. 
 
O OS/360 foi colocado na estrutura principal de todos os computadores IBM no início de 1964, 
incluindo os computadores que ajudaram a NASA a colocar o homem na lua. 
Um computador com o sistema operativo instalado poderá não dar acesso a todo o seu 
conteúdo dependendo do utilizador. Com um sistema operativo, podemos estabelecer 
permissões a vários utilizadores que trabalham com este. Existem dois tipos de contas que 
podem ser criadas num sistema operativo, as contas de Administrador e as contas limitadas. 
A conta Administrador é uma conta que oferece todo o acesso à máquina, desde a gestão 
de pastas, ficheiros e software de trabalho ou entretenimento ao controle de todo o seu 
Hardware instalado. 
A conta Limitada é uma conta que não tem permissões para aceder a algumas pastas ou 
instalar software que seja instalado na raiz do sistema ou então que tenha ligação com algum 
Hardware que altere o seu funcionamento normal ou personalizado pelo Administrador. Para 
que este tipo de conta possa ter acesso a outros conteúdos do disco ou de software, o 
administrador poderá personalizar a conta oferecendo permissões a algumas funções do 
sistema como também poderá retirar acessos a certas áreas do sistema. 
O sistema operativo funciona com a iniciação de processos que este irá precisar para 
funcionar corretamente. Esses processos poderão ser ficheiros que necessitam de ser 
frequentemente atualizados, ou ficheiros que processam dados úteis para o sistema. 
Poderemos ter acesso a vários processos do sistema operativo a partir do gestor de tarefas, 
onde se encontram todos os processos que estão em funcionamento desde o arranque do 
sistema operativo até a sua utilização atual. Pode-se também visualizar a utilização da 
memória por cada processo, no caso de o sistema operativo começar a mostrar erros ou 
falhas de acesso a programas tornando-se lento, pode-se verificar no gestor de tarefas qual 
dos processos estará bloqueado ou com elevado número de processamento que está a 
afectar o funcionamento normal da memória. 
https://pt.wikipedia.org/wiki/Linus_Torvalds
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=2
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=2
https://pt.wikipedia.org/wiki/Windows
https://pt.wikipedia.org/wiki/Linux
https://pt.wikipedia.org/wiki/MacOS
https://pt.wikipedia.org/wiki/Processo_(inform%C3%A1tica)
https://pt.wikipedia.org/wiki/Ficheiro:IBM360-65-1.corestore.jpg
Sistemas operacionais modernos[editar | editar código-fonte] 
Um sistema computacional moderno consiste em um ou mais processadores, memória 
principal, discos, impressoras, teclado, mouse, monitor, interfaces de rede e outros 
dispositivos de entrada e saída. Enfim, é um sistema complexo. Se cada programador de 
aplicações tivesse de entender como tudo isso funciona em detalhes, nenhum código 
chegaria a ser escrito. Além disso, gerenciar todos esses componentes e usá-los de maneira 
otimizada é um trabalho extremamente difícil. Por isso, os computadores têm um dispositivo 
de software denominado sistema operacional, cujo trabalho é fornecer aos programas do 
usuário um modelo de computador melhor, mais simples e mais limpo e lidar com o 
gerenciamento de todos os recursos mencionados.[4] 
Um dos conceitos mais fundamentais dos Sistemas Operacionais Modernos é a distinção 
entre o programa e a atividade de executá-lo. O programa é apenas um conjunto estático 
de diretrizes e sua execução é uma atividade dinâmica[5]. 
Outra das diferenças que podemos observar entre um sistema operacional e aplicações 
convencionais é a forma com que suas rotinas são processadas em função do tempo. Um 
sistema operacional não é executado de forma estruturada. Suas rotinas são executadas 
concorrentemente em função de eventos assíncronos. Em outras palavras, eventos que 
podem ocorrer a qualquer momento.[6] 
Estrutura em camada[editar | editar código-fonte] 
Ver artigo principal: Sistema Operacional em Camadas 
A Estruturação em camadas é um modelo de Sistema Operacional que o divide em várias 
camadas sobrepostas. Cada camada proporciona um conjunto de funções que pode ser 
usado por outras camadas. 
Uma das maiores vantagens desse modelo de camadas é isolar o sistema operacional, 
facilitando sua alteração e depuração, além de criar uma hierarquia de níveis de modos, 
protegendo as camadas mais internas. 
O empilhamento de várias camadas de software faz com que cada pedido de uma aplicação 
demore mais tempo para chegar até o dispositivo periférico ou recurso a ser acessado, 
prejudicando o desempenho do sistema. 
Funcionamento[editar | editar código-fonte] 
Um sistema operacional possui as seguintes funções: 
1. gerenciamento de processos; 
2. gerenciamento de memória; 
3. gerenciamento de recursos; 
4. entrada e saída de dados; 
5. sistema de arquivos. 
Gerenciamento de processos[editar | editar código-fonte] 
O sistema operacional multitarefa é preparado para dar ao usuário a ilusão que o número 
de processos em execução simultânea no computador é maior que o número de 
processadores instalados. Cada processo recebe uma fatia do tempo e a alternância entre 
vários processos é tão rápida que o usuário pensa que sua execução é simultânea. 
São utilizados algoritmos de escalonamento para determinar qual processo será executado 
em determinado momento e por quanto tempo. 
Os processos podem comunicar-se, isto é conhecido como IPC (Inter-Process 
Communication). Os mecanismos geralmente utilizados são: 
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=3
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=3
https://pt.wikipedia.org/wiki/Sistema_operativo#cite_note-4
https://pt.wikipedia.org/wiki/Sistema_operativo#cite_note-5
https://pt.wikipedia.org/wiki/Sistema_operativo#cite_note-ReferenceA-6
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=4
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=4
https://pt.wikipedia.org/wiki/Sistema_Operacional_em_Camadas
https://pt.wikipedia.org/wiki/Sistema_Operacional
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=5https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=5
https://pt.wikipedia.org/wiki/Gerenciamento_de_mem%C3%B3ria
https://pt.wikipedia.org/wiki/Entrada/sa%C3%ADda
https://pt.wikipedia.org/wiki/Sistema_de_ficheiros
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=6
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=6
https://pt.wikipedia.org/wiki/Multitarefa
https://pt.wikipedia.org/wiki/Escalonamento_de_processos#Algoritmos_de_escalonamento
https://pt.wikipedia.org/wiki/Inter-Process_Communication
https://pt.wikipedia.org/wiki/Inter-Process_Communication
• pipes; 
• named pipes; 
• memória compartilhada; 
• soquetes (sockets); 
• trocas de mensagens. 
O sistema operacional, normalmente, deve possibilitar 
o multiprocessamento (SMP ou NUMA). Neste caso, processos diferentes e threads podem 
ser executados em diferentes processadores. Para essa tarefa, ele deve 
ser reentrante e interrompível, o que significa que pode ser interrompido no meio da 
execução de uma tarefa. 
Gerenciamento de memória[editar | editar código-fonte] 
Ver artigo principal: Gerenciamento de memória 
O sistema operacional tem acesso completo à memória do sistema e deve permitir que os 
processos dos usuários tenham acesso seguro à memória quando o requisitam. 
 
O primeiro servidor para WWW rodou em um NeXTSTEP baseado no BSD. 
Vários sistemas operacionais usam memória virtual, que possui 3 funções básicas: 
1. Assegurar que cada processo tenha seu próprio espaço de endereçamento, 
começando em zero, para evitar ou resolver o problema de relocação (Tanenbaum, 
1999); 
2. Prover proteção da memória para impedir que um processo utilize um endereço de 
memória que não lhe pertença; 
3. Possibilitar que uma aplicação utilize mais memória do que a fisicamente existente. 
Swapping[editar | editar código-fonte] 
Dentro de gerenciamento de memória, pode não ser possível manter todos os processos 
em memória, muitas vezes por não existir memória suficiente para alocar aquele processo. 
Para solucionar esse problema existe um mecanismo chamado swapping, onde a gerência 
de memória reserva uma área do disco para o seu uso em determinadas situações, e um 
processo é completamente copiado da memória para o disco; este processo é retirado da 
fila do processador e mais tarde será novamente copiado para a memória; Então, o processo 
ficará ativo na fila novamente. O resultado desse revezamento no disco é que o sistema 
operacional consegue executar mais processos do que caberia em um mesmo instante na 
memória. Swapping impõe aos programas um grande custo em termos de tempo de 
execução, pois é necessário copiar todo o processo para o disco e mais tarde copiar 
novamente todo o processo para a memória. Em sistemas onde o usuário interage com o 
programa durante sua execução, o mecanismo de swapping é utilizado em último caso, 
quando não se é possível manter todos os processos na memória, visto que a queda no 
desempenho do sistema é imediatamente sentida pelo usuário.[7] 
Gerenciamento de recursos[editar | editar código-fonte] 
Uma das tarefas com extrema importância atribuída ao sistema operacional é o 
gerenciamento de recursos, que tem a função de definir políticas para gerenciar o uso dos 
recursos de hardware pelos aplicativos, resolvendo disputas e conflitos. Vários programas 
https://pt.wikipedia.org/wiki/Multiprocessamento
https://pt.wikipedia.org/wiki/Multiprocessamento_sim%C3%A9trico
https://pt.wikipedia.org/wiki/NUMA
https://pt.wikipedia.org/wiki/Thread_(ci%C3%AAncia_da_computa%C3%A7%C3%A3o)
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=7
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=7
https://pt.wikipedia.org/wiki/Gerenciamento_de_mem%C3%B3ria
https://pt.wikipedia.org/wiki/World_Wide_Web
https://pt.wikipedia.org/wiki/Mem%C3%B3ria_virtual
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=8
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=8
https://pt.wikipedia.org/w/index.php?title=Swapping&action=edit&redlink=1
https://pt.wikipedia.org/wiki/Sistema_operativo#cite_note-7
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=9
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=9
https://pt.wikipedia.org/wiki/Ficheiro:First_Web_Server.jpg
de entrada de dados competem pela vez na CPU (Unidade Central de Processamento) e 
demandam memória, espaço em disco e largura. O sistema operacional tem a função de 
cuidar de cada aplicativo e para que os mesmos tenham recursos necessários para o melhor 
funcionamento e gerencia a capacidade limitada do sistema para que possa atender todas 
as necessidades de aplicativos e usuários. 
Entrada e saída de dados[editar | editar código-fonte] 
Sistemas operacionais controlam e gerenciam a entrada e saída (E/S) de dispositivos por 
três razões. Primeiro, porque a maioria do hardware do dispositivo utiliza uma interface de 
baixo nível, a interface do software é complexa. Em segundo lugar, porque um dispositivo é 
um recurso compartilhado, um sistema operacional fornece acesso de acordo com as 
políticas que tornam a partilha justa e segura. Em terceiro lugar, um sistema operacional 
define uma interface de alto nível que esconde detalhes e permite que um programador 
possa usar um conjunto coerente e uniforme das operações ao interagir com os 
dispositivos.[8] 
O subsistema de E/S pode ser divididos em três peças conceituais: 
1. Uma interface abstrata que consiste funções de E/S de alto nível que os processos 
possam usar para executar I / O; 
2. Um conjunto de dispositivos físicos; 
3. Software de driver de dispositivo que conecta os dois. 
Sistema de arquivos[editar | editar código-fonte] 
A memória principal do computador é volátil, e seu tamanho é limitado pelo custo 
do hardware. Assim, os usuários necessitam de algum método para armazenar e recuperar 
informações de modo permanente. 
Um arquivo é um conjunto de bytes, normalmente armazenado em um dispositivo periférico 
não volátil (p.ex., disco), que pode ser lido e gravado por um ou mais processos. 
Tipos de sistemas[editar | editar código-fonte] 
Sistema Mono-programado[editar | editar código-fonte] 
Também chamados como sistema mono-tarefa, o sistema operacional mono-programado 
possui apenas um processador, realiza alocação de memória para somente um processo e 
um usuário por vez. Apresenta também uma CPU ociosa durante E/S e sua implementação 
é feita de forma simples. 
Sistema em Lote[editar | editar código-fonte] 
O sistema em lote é também um sistema mono-processado e utiliza a linguagem de Controle 
de Tarefas (JLC). Caracteriza-se por ter programas armazenados em disco ou fita, que uma 
vez iniciados, exigem pouca ou nenhuma interação do usuário, processando de forma 
sequencial e contínua até o fim do job, quando então é devolvido o resultado final do 
processamento. 
Exemplos de JLC: 
// $JOB 
// $FORTRAN 
• Programa escrito em FORTRAN 
// $LOAD 
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=10
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=10
https://pt.wikipedia.org/wiki/Entrada/sa%C3%ADda
https://pt.wikipedia.org/wiki/Sistema_operativo#cite_note-8
https://pt.wikipedia.org/wiki/Sistema_de_ficheiros
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=11
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=11
https://pt.wikipedia.org/wiki/Bytes
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=12
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=12
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=13
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=13https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=14
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=14
// $RUN 
• Dados de entrada do programa 
// $END 
Sistema multi-processadores[editar | editar código-fonte] 
Os sistemas multi-processadores – dois ou mais processadores trabalhando juntos – podem 
ser divididos em duas partes: 
• Sistemas fortemente acoplados; 
• Sistemas fracamente acoplados. 
Dentro de sistemas fortemente acoplados – memória única compartilhada por dois ou mais 
processadores, tendo um mesmo sistema operacional gerenciando todos os processadores 
–, encontramos mais duas divisões: 
• Sistemas simétricos – onde os processadores têm a mesma função; 
• Sistemas assimétricos – onde um processador (mestre) pode executar serviços do 
sistema operacional. 
Dentro de sistemas fracamente acoplados – mais de dois sistemas operacionais que são 
ligados por canal de comunicação, tendo hardware e sistemas operacionais independentes 
– temos: 
• Sistemas operacionais de rede – cada sistema, também chamado host ou nó, possui 
seus próprios recursos de hardware, como processadores, memória e dispositivos de 
entrada e saída. Os nós são totalmente independentes dos terminais, sendo 
interconectados por uma rede de comunicação de dados, formando uma rede de 
computadores. Os sistemas operacionais de rede são utilizados tanto em redes locais 
(Local Area Network - LAN), como em redes distribuídas (Wide Area Network - WAN). 
A ligação entre os diversos nós é feita por uma interface de rede que permite o acesso 
aos demais componentes da rede. Não existe um limite máximo para o número de nós 
que podem fazer parte de uma rede de computadores. Cada nó é totalmente 
independente dos demais, possuindo seu próprio sistema operacional e espaço de 
endereçamento. Os sistemas operacionais podem ser heterogêneos. Na Internet, cada 
host pode estar processando um sistema operacional diferente, mas todos estão se 
comunicando através do mesmo protocolo de rede, no caso, os protocolos da família 
TCP/IP (Transmission Control Protocol/Internet Protocol).[6] 
• Sistemas operacionais distribuídos – computadores independentes que parecem um 
único computador aos olhos do usuário; Trata-se de um conjunto de processos que são 
executados de forma concorrente, cada um dos quais acessando um subconjunto de 
recursos do sistema. E essa comunicação é feita em forma de envio de mensagens. 
Sistema Multi-programado para Tempo Real[editar | editar código-
fonte] 
Os sistemas multi-programado para tempo real além de serem sistemas multi-programados, 
possuem um tempo de resposta rígido e por isso são muito utilizados no controle de 
processos. Têm menos time-slice e mais prioridade, ademais, seus processos são ativados 
por sensores. A aplicação deste tipo de sistema está em máquinas de usinas, refinarias, 
tráfego aéreo, etc. 
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=15
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=15
https://pt.wikipedia.org/wiki/Sistema_operativo#cite_note-ReferenceA-6
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=16
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=16
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=16
Interface de uso[editar | editar código-fonte] 
Os sistemas operacionais fornecem abstração de hardware para que seus recursos possam 
ser usados de maneira correta e padronizada, mas para ser possível operar um computador, 
é necessário fornecer também uma interface para que o usuário possa desfrutar dos 
recursos do sistema. Atualmente as principais interfaces de uso são as seguintes: 
Interface de terminal[editar | editar código-fonte] 
A interface de terminal, também chamada de interface de linha de comando ou "CLI" 
(Command Line Interface) funciona exclusivamente com o teclado. Os comandos são 
digitados a partir de um prompt e são interpretados por um interpretador de comandos, 
conhecidos também por shells, bastante comuns em sistemas padrão POSIX. Um exemplo 
de interpretador de comandos seria o Bash. 
Usada geralmente por usuários avançados e em atividades específicas, como 
gerenciamento remoto, utiliza poucos recursos de hardware em comparação a interface 
gráfica. 
Interface textual[editar | editar código-fonte] 
 
Aplicativo com interface textual, rodando no sistema operacional FreeDOS 
Assim como a interface de terminal, a interface textual também é baseada em texto, porém 
também tem à disposição um ambiente de trabalho composto por menus, janelas e botões. 
Esse tipo de interface tinha um uso difundido em aplicações baseadas no MS-DOS, que, 
inclusive, nas versões mais recentes contava com um gerenciador de programas e arquivos 
baseados nesse tipo de interface (o DOS Shell). Atualmente essa interface é muito rara, 
praticamente restrita a sistemas implementados na década de 1980 e início da década de 
1990. Esse ambiente ainda prescinde do uso mouse, embora seja possível usá-lo através 
do uso da biblioteca ncurses no desenvolvimento dos softwares. 
Interface gráfica[editar | editar código-fonte] 
Nesse tipo de interface, também chamada GUI (Graphic User Interface) além de menus, 
janelas e botões também existem figuras, tanto vetoriais quanto fotografias. O usuário 
interage com esse tipo de interface usando o mouse, podendo também usar o teclado e 
teclas de atalho, ou então usando toques e gestos em touchscreens. A interface gráfica 
permite atuar com algumas aplicações que seriam impossíveis através da linha de comando 
puramente, como edição de imagem e vídeo. Acrescentar facilidade de uso e agilidade é o 
objetivo da interface gráfica, tendo a desvantagem de consumir muito mais memória que 
interfaces de linha de comando. Ao contrário das interfaces textuais e de terminal, as 
interfaces gráficas dependem de um servidor gráfico para funcionar e se comunicar com o 
sistema, e no caso dos sistemas para desktops e laptops, inclui um gerenciador de janelas 
em muitos casos, para que seja possível usar mais de um aplicativo na mesma tela. Em 
sistemas padrão POSIX é comum existir mais de um ambiente gráfico para o mesmo 
sistema, podendo ser escolhido a critério do usuário. 
Interface de voz[editar | editar código-fonte] 
Interfaces de voz, ou VUI (Voice User Interface), são aquelas em que o usuário interage com 
o sistema por meio de comandos sonoros. Sendo de desenvolvimento relativamente 
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=17
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=17
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=18
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=18
https://pt.wikipedia.org/wiki/Prompt
https://pt.wikipedia.org/wiki/Interpretador_de_comandos
https://pt.wikipedia.org/wiki/Bash
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=19
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=19
https://pt.wikipedia.org/wiki/MS-DOS
https://pt.wikipedia.org/wiki/D%C3%A9cada_de_1980
https://pt.wikipedia.org/wiki/D%C3%A9cada_de_1990
https://pt.wikipedia.org/wiki/D%C3%A9cada_de_1990
https://pt.wikipedia.org/wiki/Ncurses
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=20
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=20
https://pt.wikipedia.org/wiki/Interface_do_utilizador
https://pt.wikipedia.org/wiki/Touchscreen
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=21
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=21
https://pt.wikipedia.org/wiki/Ficheiro:Fdedit.png
recente, tem sua aplicação em dispositivos adaptados para cegos e recentemente têmaparecido também para uso geral em smartphones, tablets e desktops. 
Classificações[editar | editar código-fonte] 
 
Um exemplo da linha de comando 
Em relação ao seu projeto (arquitetura)[editar | editar código-fonte] 
• Núcleo monolítico ou monobloco: o núcleo consiste em um único processo executando 
numa memória protegida (espaço de núcleo) executando as principais funções. 
Ex.: MAC OS X, OS/2, Windows, Linux, FreeBSD. 
• Micronúcleo ou modelo cliente-servidor: o núcleo consiste de funções mínimas 
(comunicação e gerenciamento de processos), e outras funções, como sistemas de 
arquivos e gerenciamento de memória, são executadas no espaço do usuário como 
serviços; as aplicações (programas) são os clientes. Ex.: GNU Hurd, Mach. 
• Sistema em camadas: funções do núcleo irão executar em camadas distintas, de 
acordo com seu nível de privilégio. Ex.: Multics. 
• Monitor de máquinas virtuais: fornece uma abstração do hardware para vários 
sistemas operacionais. Ex.: VM/370, VMware, Xen. 
Quanto ao gerenciamento de processos[editar | editar código-fonte] 
• Monotarefa: pode-se executar apenas um processo de cada vez Ex.: MS-DOS. 
• Multitarefa: além do próprio SO, vários processos de utilizador (tarefas) estão 
carregados em memória, sendo que um pode estar ocupando o processador e outros 
ficam enfileirados, aguardando a sua vez. O compartilhamento de tempo no processador 
é feito de modo que o usuário tenha a impressão que vários processos estão sendo 
executados simultaneamente. Cada processo recebe um tempo para ser executado. Ao 
final desse tempo, outro processo é executado. Essa alternância de processos chama-
se concorrência. 
• Multitarefa cooperativa: Executa dois ou mais programas em simultâneo 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 versões anteriores ao Mac OS 8. 
• Multitarefa preemptiva: É o processador que controla a execução 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. 
• Elemento de lista com marcas: Ex: OS/2, Windows, Linux, FreeBSD e o Mac OS X. 
Cabe destacar que processos só podem estar executando simultaneamente caso o 
https://pt.wikipedia.org/wiki/Cegueira
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=22
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=22
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=23
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=23
https://pt.wikipedia.org/wiki/Monol%C3%ADtico
https://pt.wikipedia.org/wiki/MAC_OS_X
https://pt.wikipedia.org/wiki/OS/2
https://pt.wikipedia.org/wiki/Windows
https://pt.wikipedia.org/wiki/Linux
https://pt.wikipedia.org/wiki/FreeBSD
https://pt.wikipedia.org/wiki/Micron%C3%BAcleo_(inform%C3%A1tica)
https://pt.wikipedia.org/wiki/GNU_Hurd
https://pt.wikipedia.org/wiki/Mach_(n%C3%BAcleo)
https://pt.wikipedia.org/w/index.php?title=Em_camadas&action=edit&redlink=1
https://pt.wikipedia.org/wiki/Multics
https://pt.wikipedia.org/w/index.php?title=VM/370&action=edit&redlink=1
https://pt.wikipedia.org/wiki/VMware
https://pt.wikipedia.org/wiki/Xen
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=24
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=24
https://pt.wikipedia.org/wiki/Monotarefa
https://pt.wikipedia.org/wiki/MS-DOS
https://pt.wikipedia.org/wiki/Multitarefa
https://pt.wikipedia.org/wiki/Multitarefa_cooperativa
https://pt.wikipedia.org/wiki/Preemptividade
https://pt.wikipedia.org/wiki/OS/2
https://pt.wikipedia.org/wiki/Windows
https://pt.wikipedia.org/wiki/Linux
https://pt.wikipedia.org/wiki/FreeBSD
https://pt.wikipedia.org/wiki/Mac_OS_X
https://pt.wikipedia.org/wiki/Ficheiro:Command_line.png
sistema seja multiprocessado, já que, em que cada instante de tempo, apenas um 
processo está em execução em um processador ou núcleo de processamento (core). 
• Multiprocessamento: o SO distribui as tarefas entre dois ou mais processadores. Se os 
processadores estivem na mesma máquina física, o sistema é chamado de Sistema 
Multiprocessado Fortemente Acoplado. Caso esteja em máquinas diferentes, trata-se 
de um Sistema Multiprocessado Fracamente Acoplado. 
Quanto à quantidade de usuários concorrentes[editar | editar 
código-fonte] 
• Monousuário: apenas um usuário por vez (apesar de poder suportar recursos 
como troca de usuário). Ex.: Windows. Esse também pode ser acessado por 
terminais e conexão remota. 
• Multiusuário: vários usuários usam o computador ao mesmo tempo, seja por 
diversos terminais, seja por conexão remota como o SSH. Ex.: Linux, Unix. 
Exemplos de sistemas operacionais[editar | editar código-fonte] 
Para desktop/servidores[editar | editar código-fonte] 
• BeOS † 
• CentOS 
• CP/M † 
• DaVinci OS 
• Debian 
• Arch Linux 
• Manjaro Linux 
• Sabayon Linux 
• SolusOS 
• DragonflyBSD 
• eComStation 
• Fedora 
• FreeBSD 
• FreeDOS 
• Gentoo 
• Haiku 
• Inferno 
• Linux Mint 
• macOS 
• Mac OS Classic † 
• Mageia 
• MenuetOS 
• MINIX 
• MS-DOS † 
• NetBSD 
• NeXTStep † 
• OpenBSD 
• OS/2 † 
• OpenSuSE 
• PCLinuxOS 
• Plan 9 
• ReactOS 
• Slackware 
https://pt.wikipedia.org/wiki/Multiprocessamento
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=25
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=25
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=25
https://pt.wikipedia.org/wiki/Monousu%C3%A1rio
https://pt.wikipedia.org/wiki/Windows
https://pt.wikipedia.org/wiki/Multiusu%C3%A1rio
https://pt.wikipedia.org/wiki/Terminal_(inform%C3%A1tica)
https://pt.wikipedia.org/w/index.php?title=Conex%C3%A3o_remota&action=edit&redlink=1
https://pt.wikipedia.org/wiki/SSH
https://pt.wikipedia.org/wiki/Linux
https://pt.wikipedia.org/wiki/Unix
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=26
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=26
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=27
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=27
https://pt.wikipedia.org/wiki/BeOS
https://pt.wikipedia.org/wiki/CentOS
https://pt.wikipedia.org/wiki/CP/M
https://pt.wikipedia.org/w/index.php?title=DaVinci_OS&action=edit&redlink=1
https://pt.wikipedia.org/wiki/Debian
https://pt.wikipedia.org/wiki/Arch_Linux
https://pt.wikipedia.org/wiki/Manjaro_Linux
https://pt.wikipedia.org/wiki/Sabayon_Linux
https://pt.wikipedia.org/wiki/SolusOS
https://pt.wikipedia.org/wiki/DragonflyBSD
https://pt.wikipedia.org/wiki/EComStation
https://pt.wikipedia.org/wiki/Fedora_Linux
https://pt.wikipedia.org/wiki/FreeBSD
https://pt.wikipedia.org/wiki/FreeDOS
https://pt.wikipedia.org/wiki/Gentoo
https://pt.wikipedia.org/wiki/Haiku_(sistema_operacional)
https://pt.wikipedia.org/wiki/Inferno_(Sistema_Operacional)
https://pt.wikipedia.org/wiki/Linux_Mint
https://pt.wikipedia.org/wiki/MacOS
https://pt.wikipedia.org/wiki/Mac_OS_Classic
https://pt.wikipedia.org/wiki/Mageia
https://pt.wikipedia.org/wiki/MenuetOS
https://pt.wikipedia.org/wiki/MINIX
https://pt.wikipedia.org/wiki/MS-DOS
https://pt.wikipedia.org/wiki/NetBSD
https://pt.wikipedia.org/wiki/NEXTSTEP
https://pt.wikipedia.org/wiki/OpenBSD
https://pt.wikipedia.org/wiki/OS/2
https://pt.wikipedia.org/wiki/OpenSuSE
https://pt.wikipedia.org/wiki/PCLinuxOS
https://pt.wikipedia.org/wiki/Plan_9_from_Bell_Labs
https://pt.wikipedia.org/wiki/ReactOS
https://pt.wikipedia.org/wiki/Slackware
• Solaris 
• Unix System V 
• Ubuntu 
• Microsoft Windows 
• ElementaryOS 
Para dispositivos móveis (tablets e smartphones)[editar | editar 
código-fonte] 
• Android 
• Bada 
• Blackberry OS 
• Firefox OS † 
• iOS 
• Maemo 
• MeeGo 
• Tizen 
• Ubuntu Touch 
• WebOS 
• Windows Mobile † 
• Windows Phone† 
• Symbian OS † 
• RedHat 
• Harmony OS 
 
Fonte: https://pt.wikipedia.org/wiki/Sistema_operativo Acessado em 16 de janeiro de 2020. 
https://pt.wikipedia.org/wiki/Solaris_(sistema_operacional)
https://pt.wikipedia.org/wiki/System_V
https://pt.wikipedia.org/wiki/Ubuntu
https://pt.wikipedia.org/wiki/Microsoft_Windows
https://pt.wikipedia.org/wiki/Elementary_OS
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&veaction=edit&section=28
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=28
https://pt.wikipedia.org/w/index.php?title=Sistema_operativo&action=edit&section=28
https://pt.wikipedia.org/wiki/Android
https://pt.wikipedia.org/wiki/Bada_(Sistema_operacional)
https://pt.wikipedia.org/wiki/Blackberry_OS
https://pt.wikipedia.org/wiki/Firefox_OS
https://pt.wikipedia.org/wiki/IOS
https://pt.wikipedia.org/wiki/Maemo
https://pt.wikipedia.org/wiki/MeeGo
https://pt.wikipedia.org/wiki/Tizen
https://pt.wikipedia.org/wiki/Ubuntu_Touch
https://pt.wikipedia.org/wiki/WebOS
https://pt.wikipedia.org/wiki/Windows_Mobile
https://pt.wikipedia.org/wiki/Windows_Phone
https://pt.wikipedia.org/wiki/Symbian_OS
https://pt.wikipedia.org/wiki/RedHat
https://pt.wikipedia.org/wiki/Harmony_OS
https://pt.wikipedia.org/wiki/Sistema_operativo

Outros materiais