Universidade Zambeze
Faculdade de Ciências e Tecnologia
Licenciatura em Engenharia Informática 1° Nível
Cadeira: Informática I
Sistemas Operativos
Discentes:
Aylton
Anselmo Mendes Victor Branco
Mário Pedro Tacanheque
Samuel Reginaldo Rogerio
Beira, Maio de 2022
1
Índice
Introdução ................................................................................................................................ 3
Sistemas operativos ................................................................................................................. 4
BREVE HISTORIA DOS SISTEMAS OPERATIVOS ......................................................... 4
Generalidades sobre o sistema computacional ........................................................................ 7
FUNCIONAMENTO DOS SISTEMAS OPERATIVOS ....................................................... 9
Tipos de sistemas operativos ................................................................................................. 11
ESTRUTURA DE UM SISTEMA OPERATIVO ................................................................ 14
Instalação de sistemas operativos .......................................................................................... 16
Virtualização .......................................................................................................................... 18
Conclusão .............................................................................................................................. 20
Bibliografia ............................................................................................................................ 21
2
Introdução
O presente trabalho é de carácter avaliativo da cadeira de informática I, que tem como tema
Sistemas Operativos, onde falar-se-á dos tipos de sistemas operativos, o funcionamento, o
seu historial, instalação, virtualização e versões. Este tema ira ajudar na compreensão e na
aprendizagem da forma como pode se manipular e manejar os sistemas operativos. Quanto a
estrutura o trabalho contem: capa, índice, introdução, desenvolvimento, conclusão e
bibliografia.
3
Sistemas operativos
Um Sistema operativo pode ser definido como um gerenciador dos recursos que compõem o
computador (processador, memória, I/O, arquivos). Os problemas centrais que o Sistema
Operativo deve resolver são o compartilhamento ordenado, a protecção dos recursos a serem
usados pelas aplicações do usuário e o interface amento entre este e a máquina.” O Sistema
Operacional: principal programa do sistema, que controla todos os recursos do computador
(dispositivos físicos e funções software).
BREVE HISTORIA DOS SISTEMAS OPERATIVOS
Desde os tempos do computador programado por chaves e cabos até o surgimento do
teclado e impressora de caracteres, procurou-se ao longo do processo evolutivo do
computador tornar a sua utilização mais amigável, precisa, rápida e eficaz.
O conjunto de equipamentos e recursos utilizados para que o homem possa controlar o
computador é genericamente denominado interface. O aprimoramento da interface atingiu o
ponto em que o usuário passou a interagir com pequenos desenhos ou símbolos de objetos
comuns ao seu trabalho. Pensou-se em representar, por exemplo, a tarefa de impressão de
documentos pelo desenho de uma pequena impressora e a eliminação de um documento por
uma pequena lixeira. Surgiram os ícones. O histórico da evolução foi dividido em fases,
cada uma marcada pela evolução significativa do hardware, do software, da interação com o
sistema ou por aspectos de conectividade. Primeiramente, devemos ressaltar que o
mapeamento das datas de evoluções e gerações dos Sistemas Operacionais e das
Arquiteturas de Computadores são, de certa forma, vagas e imprecisas, mas com certa
estrutura.
4
a) Primeira fase (1945-1955) - Válvulas e Painéis de Programação
No início da Segunda Guerra Mundial, surgiram os primeiros computadores digitais,
formados por milhares de válvulas, que ocupavam áreas enormes, sendo de funcionamento
lento e duvidoso.
O ENIAC (Electronic Numerical Integrator and Computer) foi o primeiro computador
digital de propósito geral. Criado para a realização de cálculos balísticos, sua estrutura
possuía 17.468 válvulas, 10 mil capacitores, 70 mil resistores e pesava 32 toneladas. Quando
em operação era capaz de realizar cinco mil adições por segundo.
A programação era feita em painéis, através de fios, utilizando linguagem de máquina. Não
existia o conceito de sistema operacional. Outros computadores foram construídos nessa
época, mas eram utilizados apenas em universidades e órgãos militares.
b) Segunda fase (1956-1965) - Transistores e Sistemas em Lote (batch).
A criação do transístor e das memórias magnéticas contribuiu para o enorme avanço dos
computadores da época. O transístor permitiu o aumento da velocidade e da confiabilidade
do processamento; as memórias magnéticas permitiram o acesso mais rápido aos dados,
maior capacidade de armazenamento e computadores menores.
Fig 2:. Ciclo de processamento na segunda fase
Os programas passaram a ser perfurados em cartões que, submetidos a uma leitora, eram
processados e gravados em uma fita de entrada, conforme Figura 2.1. A fita de entrada,
então, era lida pelo computador, que executava um programa de cada vez, processando e
gravando o resultado em uma fita de saída. Ao término de todos os programas, as fitas de
5
saída eram lidas e processadas novamente para serem impressas, gerando assim os
relatórios.
Com o processamento em batch, um grupo de programas era submetido de uma só vez, o
que diminuía o tempo existente entre a execução dos programas, permitindo, assim, melhor
uso do computador.
c) Terceira fase (1966-1980) - Circuitos Integrados e Multiprogramação
Por meio dos circuitos integrados e, posteriormente, dos microprocessadores, foi possível
viabilizar e difundir o uso de sistemas computacionais por empresas, devido à diminuição de
seus custos de aquisição. Houve um aumento no poder de processamento e diminuição no
tamanho dos equipamentos.
A evolução dos processadores de entrada/saída permitiu que, enquanto um programa
esperasse por uma operação de leitura/gravação, o processador executasse um outro
programa. Para tal, a memória foi dividida em partições, em que um programa esperava sua
vez para ser processado. A essa técnica de compartilhamento da memória principal e
processador deu-se o nome de Com a substituição das fitas por discos no processo de
submissão dos programas, o processamento batch tornou-se mais eficiente, pois permitia a
alteração na ordem de execução das tarefas, até então somente sequencial. Os sistemas
operacionais, mesmo com a evolução do processamento batch e a multiprogramação, ainda
estavam limitados a processamentos que não exigiam comunicação com o usuário. Para
permitir a interação rápida entre o usuário e o computador, foram adicionados terminais de
vídeo e teclado (interação on-line).
A multiprogramação evoluiu, preocupada em oferecer aos usuários tempos de resposta
razoáveis e uma interface cada vez mais amigável. A esse sistema de divisão de tempo do
processador chamou-setime-sharing (tempo compartilhado).
d) Quarta fase (1981-1990) - Computadores Pessoais
6
Os mini e superminicomputadores se firmaram no mercado e os microcomputadores
ganharam um grande impulso. Surgem as estações de trabalho (workstations) que, apesar de
monousuárias, permitem que se executem diversas tarefas concorrentemente, criando o
conceito de multitarefa.
e) Quinta fase (1991-2000)
Houve grandes avanços em termos de hardware, software e telecomunicações como
consequência da evolução das aplicações, que necessitavam cada vez mais de capacidade de
processamento e armazenamento de dados. Sistemas especialistas, sistemas multimídia,
bancos de dados distribuídos, inteligência artificial e redes neurais são apenas alguns
exemplos da necessidade cada vez maior de informação e de capacidade de processamento.
A década de 90, foi definitiva para a consolidação dos sistemas operacionais baseados em
interfaces gráficas.
Atualmente temos as plataformas multicore (vários núcleos) disponíveis em computadores
pessoais e até notebooks, possibilitando cada vez mais a paralelização de aplicações e
elevando, em muito, o tempo de execução dos programas. Os fanáticos pelos jogos de
computador que o digam.
Generalidades sobre o sistema computacional
Um computador de uso geral, moderno, consiste de uma CPU e em uma série de
controladoras de dispositivos que são conectadas através de um barramento comum que
fornece acesso à memória compartilhada. Cada controladora de dispositivo está encarregada
de um tipo específico de dispositivo (por exemplo, unidades de disco, dispositivos de áudio
e monitores de vídeo). A CPU e as controladoras de dispositivo podem executar em modo
concorrente, competindo pelos ciclos de memória. Para garantir acesso correcto à memória
compartilhada, uma controladora de memória é fornecida e sua função é sincronizar o seu
acesso.
7
Fig:. sistema computacional moderno
Visão abstracta de um Sistema Operativo
Numa visão mais genérica, o computacional pode ser visto como um binómio: Hardware e
Software. Este último é entendido como um conjunto de programas que comandam o
funcionamento de um computador, isto é sequência de instruções escritas para serem
interpretadas por um computador.
Um dos software mais importantes do sistema operativo moderno é o sistema operativo, que
se enquandra na categoria do software do sistema, conforme a árvore que se segue.
Fig:. Visao do sistema computacional
Constituem objectivos de um Sistema Operativo:
Compartilhar recursos de forma organizada
Facilitar o acesso aos mesmos
8
Assim sendo, cumprindo com esses objectivos, o Sistema Operativo pode ser visto de
diferentes formas:
Utilizador – Interface de operaação (UI - User Interface)
Aplicação/compiladores - provedor de recursos
Programadores/Analistas – Interface de programação, isto é o sistema operativo
oferece todos recursos necessários para simplificar o desenvolvimento de aplicações.
E numa visão de baixo para cima, o sistema operativo é tratado como gestor de
recursos, que transforma máquina física em máquina virtual, que disponibiliza os
recursos para as camadas superiores (aplicações, utilizadores, compiladores e
programadores), sem descorar a a utilização eficeinte dos mesmos (CPU, memória
primária e dispositivos de E/S)
FUNCIONAMENTO DOS SISTEMAS OPERATIVOS
O sistema operacional deve atuar em várias frentes. Cada um dos recursos do sistema
possui suas particularidades, o que impõe exigências específicas para gerenciar e abstrair os
mesmos. Sob esta perspectiva, as principais funcionalidades implementadas por um sistema
operacional típico são:
Gerência do processador: esta funcionalidade, também conhecida como gerência de
processos, de tarefas ou de atividades, visa distribuir a capacidade de processamento de
forma justa1 entre as aplicações, evitando que uma aplicação monopolize esse recurso e
respeitando as prioridades definidas pelos usuários.
O sistema operacional provê a ilusão de que existe um processador independente para cada
tarefa, o que facilita o trabalho dos programadores de aplicações e permite a construção de
sistemas mais interativos. Também faz parte da gerência de tarefas fornecer abstrações para
sincronizar tarefas interdependentes e prover formas de comunicação entre elas.
Gerência de memória: tem como objetivo fornecer a cada aplicação uma área de memória
própria, independente e isolada das demais aplicações e inclusive do sistema operacional. O
isolamento das áreas de memória das aplicações melhora a estabilidade e segurança do
sistema como um todo, pois impede aplicações com erros (ou aplicações maliciosas) de
interferir no funcionamento das demais aplicações. Além disso, caso a memória RAM
existente seja insuficiente para as aplicações, o sistema operacional pode aumentá-la de
9
forma transparente às aplicações, usando o espaço disponível em um meio de
armazenamento secundário (como um disco rígido).
Uma importante abstração construída pela gerência de memória, com o auxílio do hardware,
é a noção de memória virtual, que desvincula os endereços de memória vistos por cada
aplicação dos endereços acessados pelo processador na memória RAM. Com isso, uma
aplicação pode ser carregada em qualquer posição livre da memória, sem que seu
programador tenha de se preocupar com os endereços de memória onde ela irá executar.
Gerência de dispositivos: cada periférico do computador possui suas particularidades;
assim, o procedimento de interação com uma placa de rede é completamente diferente da
interacção com um disco rígido SATA. Todavia, existem muitos problemas e abordagens
em comum para o acesso aos periféricos. Por exemplo, é possível criar uma abstração única
para a maioria dos dispositivos de armazenamento como pendrives, discos SATA ou IDE,
CDROMs, etc., na forma de um vetor de blocos de dados. A função da gerência de
dispositivos (também conhecida como gerência de entrada/saída) é implementar a interação
com cada dispositivo por meio de drivers e criar modelos abstratos que permitam agrupar
vários dispositivos similares sob a mesma interface de acesso.
Gerência de arquivos: esta funcionalidade é construída sobre a gerência de dispositivos e
visa criar arquivos e diretórios, definindo sua interface de acesso e as regras para seu uso. É
importante observar que os conceitos abstratos de arquivo e diretório são tão importantes e
difundidos que muitos sistemas operacionais os usam para permitir o acesso a recursos que
nada tem a ver com armazenamento. Exemplos disso são as conexões de rede (nos sistemas
UNIX eWindows, cada socket TCP é visto como um descritor de arquivo no qual pode-se
ler ou escrever dados) e as informações internas do sistema operacional (como o diretório
/proc do UNIX). No sistema experimental Plan9,por exemplo, todos os recursos do sistema
operacional são vistos como arquivos.
Gerência de proteção: com computadores conectados em rede e compartilhados por vários
usuários, é importante definir claramente os recursos que cada usuário pode acessar, as
formas de acesso permitidas (leitura, escrita, etc.) e garantir que essas definições sejam
cumpridas. Para proteger os recursos do sistema contra acessos indevidos, é necessário:
a) Definir usuários e grupos de usuário;
b) Identificar os usuários que se conectam ao sistema, através de procedimentos de
autenticação;
c) Definir e aplicar regras de controle de acesso aos recursos,
10
relacionando todos os usuários, recursos e formas de acesso e aplicando essas regras através
de procedimentos de autorização; e finalmente;
d) Registrar o uso dos recursos pelos usuários, para fins de auditoria e contabilização.
Tipos de sistemas operativos
Os tipos de sistemas operativos são três:
Monoprogramaveis ou monotarefa;
Multiprogramaveis ou multitarefa;
Sistemas com múltiplos processadores.
Fig:. Tipos de sistemas operativos
Sistemas Monotarefa /multiprogramável
Um único programa em execução.
Todos os recursos dedicados a esse programa – desperdício de recursos
Estrutura simples
Ex: MS-DOS, PALM OS
Figura de mono tarefa
11
Sistemas Multitarefa /multiprogramável
Vários programas em execução.
Compartilhamento e gestão dos recursos.
Melhor aproveitamento.
Estrutura complexa.
Alguns são multi-usuários.
Fig. Sistema programavel
Lote (Batch)
Primeiros sistemas operativos multitarefas;
Tarefas não interactivas;
Fila de submissão de tarefas, sem interferência pois as tarefas não coexistem na
memória;
Saída em impressora ou disco;
Podem ser eficientes, como também podem ter tempos de resposta longos;
Ideal para computação financeira e científica onde o mesmo tipo de processamento e
análise são realizados com frequência; A transição entre as tarefas é automática.
Tempo Compartilhado (Time-Sharing)
Tipo mais comum
Buscam eficiência na utilização de recursos: operações de I/O e processamento
podem correr a qualquer altura, o que aumenta a performance;
12
Conceito de fatia de tempo (Time slice)
Cada tarefa fica em execução até o tempo atribuído, dando lugar a outra
Tarefas interactivas com bons tempos de resposta, aplicando por exemplo o
escalonamento Round Robin. Ex: UNIX, WINDOWS
Tempo Real (RTOS)
Semelhante ao sistema time-sharing, mas não iguais.
Tempo de resposta dentro de intervalos rígidos
Conceito de prioridade: tarefa em execução enquanto não houver outro de mais
prioridade do que ela
Prioridade definida pela aplicação
Uso em sistemas de missão critica e controle de processos: refinarias, siderúrgicas,
tráfego aéreo.
Múltiplas CPU´s
Processamento paralelo
Escalabilidade
Disponibilidade
Balanceamento de carga
Tendência actual
Problemas:
Necessidade de desempenho
Mais caros computacionalmente.
Multiprocessadores: sistemas fortemente acoplados
Memória única.
Tudo gerenciado por um único sistema operativo.
Subdividido em
o Arquitectura simétrica.
o Assimétrico
Custo de produção mais elevado.
13
Multi-processadores: sistemas fracamente acoplados
Cada membro do sistema esta conectado aos outros por um link de dados
Podemos ter sistemas sistemas de rede distribuídos
Sistemas operativos de rede:
o Requer o conhecimento prévio da localização de recursos
o Cada nó poderá correr o seu sistema operativo
o Em caso de falha de um dos nós, os serviços naquele nó ficam indisponíveis
Sistemas operativos distribuídos:
o Partilha de recursos e redundância de serviços
o Controlo distribuído e transparência aos acesso de recursos
o Mesmo sistema operativo em todos nós envolvidos .
ESTRUTURA DE UM SISTEMA OPERATIVO
Um Sistema operativo é Composto de três partes funcionais:
Kernel;
Bibliotecas; e
Utilitários.
Kernel
Núcleo do Sistema Operativo-parte central (núcleo)
Oferece funções e serviços para se usar a CPU, memória primária e outros
dispositivos
Como o kernel comunica com hardware e software, sua organização interna varia de
projecto para projecto. E daí ser necessário que seja pequeno, rápido, estável e seguro.
Principais funções do kernel
14
Gestão da CPU / processos (Programas em execução)
Gestão de memória principal e secundária
Gestão de dispositivos de E/S
Gestão do sistema de ficheiros
Tratamento de interrupções.
Tratamento de excepções
Suporte aos serviços de rede
Implementação de mecanismos de segurança
Contabilidade e auditoria do sistema (logging)
Bibliotecas
Conjunto de rotinas usadas por programas.
Fornecem serviços para os programas.
Contém as chamadas ao sistema.
Chamadas do sistema (system calls)
Partes integrantes das bibliotecas.
Meio organizado e padronizado para acesso ao kernel.
Forma como o kernel pode ser acessado.
Esconde a complexidade do acesso para o programador.
Programa / Aplicação > System Calls > Kernel > Hardware
Fig:. System call
Utilitários
Programas que auxiliam o funcionamento do sistema operativo.
15
Exemplos: Compiladores, compactadores, ferramentas de acesso ao disco,.
Instalação de sistemas operativos
Sistema operativo da linnux
Para baixar esses sistemas com a versão ubuntu seguem-se os seguintes passos:
Passo 1: Baixe a iso de instalação no endereço de acordo com a sua máquina (32
ou 64 bits):
[Link]
Passo 2: Faça uma midia de instalação (DVD ou pendrive);
Passo 3: Configure seu pc para inicializar por essa mídia criada;
Obs. Essa configuração é feita na BIOS do seu computador e isso
muda dependendo do fabricante, então consulte em manuais do fabricante
como fazer essa configuração.
Exemplo: o DELL pressione F12 e seleccione o pendrive
Passo 4: Ao iniciar aparecerá a seguinte tela;
Selecione o idioma “Português do Brasil” ou um de sua preferência (1) e clique em
“Instalar o Ubuntu! (2).
Passo 5: Na próxima tela marque a opção Instalar Software de terceiros… (4) para
poder instalar posteriormente plugins e drivers de vídeo e clique em continuar. A opção 3,
Baixar atualização… é importante que você deixe desmarcado pois assim você pode
Configurar melhor depois para que não dê problema em seu sistema.
Passo 6: Nessa tela selecione a última opção, Opção Avançada (6), para você ter um maior
controle sobre o disco que você quer instalar o sistema e clique em continuar.
Passo 7: A partir de agora teremos 4 situações: Você precisa analisar a sua situação e ver
em qual se encaixa melhor.
1ª - Esta instalação é a primeira instalação do PC (Não tem nenhum sistema
instalado em seu PC) ( Passo 7.1 ).
2ª - Seu PC já tem algum sistema instalado e você quer mantê-lo ( Passo 7.2 );
3ª - Seu PC já tem algum sistema instalado e você quer apagá-lo ( Passo 7.3 );
4ª - Seu PC já tem algum sistema instalado e você quer atualizá-lo ( Passo 7.4 );
Passo 7.1: Se você tiver nessa situação aparecerá essa tela:
Selecione o espaço livre (7) e clique no „+‟ (8);
asso 9.1.1: Nesta tela (abaixo) que abriu, note que temos um espaço do disco emMB (9):
16
Passo 7.1.2: Agora precisamos criar a partição swap, para isso, selecione o espaço livre e
clique no „+‟ novamente, deve aparecer a tela abaixo
Em Tamanho (13), coloque o valor calculado para a swap no Passo 7.1.1, em
seguida, em Tipo para a nova partição (14), marque a opção Lógica. Em Localização para
a nova partição (15) deixe como está, no início deste espaço, agora em Usar como (16),
clique na seta para baixo e selecione a opção Área de troca (swap) e clique em „Ok‟ e na
próxima tela clique em Instalar agora , no canto inferior direito e depois em Continuar siga
para o Passo 8 .
Passo 7.2: Seu PC já tem algum sistema instalado e você quer mantê-lo
Neste passo teremos duas possibilidades, são elas:
1ª Você já tem instalado um ou mais linux e você quer instalar outro(s):
2ª Você tem um sistema Microsoft Windows instalado e quer instalar um ou
mais linux junto.
Passo 7.2.1: Vamos para a primeira possibilidade: (Você já tem instalado um ou mais Linux
e você quer instalar outro(s)).
Note que agora você já tem uma partição swap (17), então você não precisará criá-la
novamente. Não altere nada das partiçẽs que estão prontas, apenas selecione onde já diz
Espaço livre (18) e clique no „+‟ (19). Deverá abrir a seguinte tela:
Em (20) você tem o espaço que você pode usar para instalar o seu linux, se você
pretende instalar outro(s), deverá dividir este espaço pelo número de linux que deseja
instalar, ajuste-o de acordo com a sua necessidade.
Em Tipo de partição (21) deixe como Lógica .
NÃO altere a Localização da partição (22).
Em Usar como (23) mude para : Sistema de arquivo com “journaling” ext4.
Em Ponto de montagem (24) selecione a opção „/‟ ou apenas digite.
Clique em “ok” e logo depois clique em Instalar agora e na prima janela clique em
Continuar .
Avance para o Passo 8.
Passo 8: Ao aparecer essa tela:
Verifique se você está em MOCAMBIQUE e prossiga clicando em Continuar.
Obs. Se tiver mostrando outro local, clique em alguma região próxima da que está em verde
na imagem acima para mudar para São Paulo.
17
Passo 9: Verifique se o idioma do seu teclado está correto testando os principais caracteres
como mostra abaixo em (36):
Caso não esteja correto, selecione o idioma de seu teclado e suas variações em (37) e 38
respectivamente, depois clique em Continuar.
Passo 10: Para configurar o usuário fizemos como na imagem abaixo:
Em (39) coloque o seu nome ( pccli ), em (40) coloque o nome do seu PC
(normalmente preenche automático podendo ser customizado) Por exemplo nos PC‟s do
Lab. A costuma-se nomeá-los como pccli-LabA.
Em (41) coloque o nome de usuário, se for nos Labs ou sala de aula o padrão é
pccli , na secretaria é lince.
Em (42) coloque a senha e a repita no campo de baixo. (Padrão para pccli é
zecarioca)
Em (43), se for pccli marque a opção Iniciar sessão automaticamente ( se for lince deixe o
padrão )
Clique em continuar e espere o sistema ser instalado.
Ao solicitar, clique em reiniciar retire a mídia de instalação do drive.
As versoes podem ser da ubuntu, mint e cada uma tem a sua caracteristica
Virtualização
O conceito de virtualização
As tecnologias de virtualização do ambiente de execução de aplicações ou de plataformas de
hardware têm sido objeto da atenção crescente de pesquisadores, fabricantes de
hardware/software, administradores de sistemas e usuários avançados. A virtualização de
recursos é um conceito relativamente antigo, mas os recentes avanços nessa área permitem
usar máquinas virtuais com os mais diversos objetivos, como a segurança, a compatibilidade
de aplicações legadas ou a consolidação de servidores..
Interfaces de sistema
Uma máquina real é formada por vários componentes físicos que fornecem operações para o
sistema operacional e suas aplicações. Iniciando pelo núcleo do sistema real, o processador
central (CPU) e o chipset da placa - mãe fornecem um conjunto de instruções e outros
elementos fundamentais para o processamento de dados, alocação de memória e
18
processamento de entrada/saída. Os sistemas de computadores são projetados com
basicamente três componentes: hardware, sistema operacional e aplicações. O papel do
hardware é executar as operações solicitadas pelas aplicações através do sistema
operacional. O sistema operacional recebe as solicitações das operações (por meio das
chamadas de sistema) e controla o acesso ao hardware – principalmente nos casos em que os
componentes são compartilhados, como a memória e os dispositivos de entrada/saída.
As interfaces existentes entre os componentes de um sistema de computação típico são:
Conjunto de instruções (ISA – Instruction Set Architecture): é a interface básica entre o
hardware e o software, sendo constituída pelas instruções de máquina aceitas pelo
processador e as operações de acesso aos recursos do hardware (acesso físico à memória, às
portas de entrada/saída, ao relógio do hardware, etc.). Essa interface é dividida em duas
partes:
Instruções de usuário (User ISA): compreende as instruções do processador e demais itens
de hardware acessíveis aos programas do usuário, que executam com o processador
operando em modo usuário;
Instruções de sistema (System ISA): compreende as instruções do processador e demais
itens de hardware unicamente acessíveis ao núcleo do sistema operacional, que executa em
modo privilegiado;
Chamadas de sistema (syscalls): é o conjunto de operações oferecidas pelo núcleo do
sistema operacional aos processos no espaço de usuário. Essas chamadas permitem o acesso
controlado das aplicações aos dispositivos periféricos, à memória e às instruções
privilegiadas do processador.
Chamadas de bibliotecas (libcalls): as bibliotecas oferecem um grande número de funções
para simplificar a construção de programas; além disso, muitas chamadas de biblioteca
encapsulam chamadas do sistema operacional, para tornar seu uso mais simples. Cada
biblioteca possui uma interface própria, denominada Interface de Programação de
Aplicações (API – Application Programming Interface).
Exemplos típicos de bibliotecas são a LibC do UNIX (que oferece funções como fopen e
printf), a GTK+ (Gimp ToolKit, que permite a construção de interfaces gráficas) e a SDL
(Simple DirectMedia Layer, para a manipulação de áudio e vídeos.
19
Conclusão
Depois de várias consultas bibliográficas, concluímos que desde os tempos do computador
programado por chaves e cabos até o surgimento do teclado e impressora de caracteres,
procurou-se ao longo do processo evolutivo do computador tornar a sua utilização mais
amigável, precisa, rápida e eficaz.
O conjunto de equipamentos e recursos utilizados para que o homem possa controlar o
computador é genericamente denominado interface. O aprimoramento da interface atingiu o
ponto em que o usuário passou a interagir com pequenos desenhos ou símbolos de objetos
comuns ao seu trabalho. Pensou-se em representar, por exemplo, a tarefa de impressão de
documentos pelo desenho de uma pequena impressora e a eliminação de um documento por
uma pequena lixeira. Surgiram os ícones.
20
Bibliografia
CARLOS Maziero, Sistemas operativos, editora ISBN, 1ª ed, São Paulo.
BRUNO Cardoso Coutinho, Sistemas Operacionais, Editora CEAD, Brasil 2010
21