Pesquise sobre o termo traps em sistemas operacionais e em que situações elas ocorrem

Grátis

80 pág.

Pesquise sobre o termo traps em sistemas operacionais e em que situações elas ocorrem

  • Denunciar


Pré-visualização | Página 11 de 17

é fundamental para a implementa-
ção da multiprogramação?
4. Explique o mecanismo de funcionamento das interrupções.
5. Pesquise sobre o termo traps em sistemas operacionais e em que situa-
ções elas ocorrem.
6. O que é DMA e qual a vantagem desta técnica?
Um sistema operacional fornece o ambiente no qual os programas são exe-
e-Tec BrasilAula 4 – Elementos de hardware e software – Parte II 49
cutados. Esse ambiente é formado por um conjunto de rotinas que oferecem 
serviços aos usuários, às aplicações e ao próprio sistema. A esse conjunto 
de rotinas denominamos kernel. A Figura 4.3 nos mostra em que nível se 
encontra o kernel em um sistema computacional. O kernel é considerado o 
núcleo do sistema operacional.
Aplicativos
Utilitários
Núcleo do
Sistema Operacional
Hardware
Figura 4.3: Posicionamento do núcleo do sistema operacional em um sistema 
computacional
Fonte: Adaptado de Machado, 2004 
As principais funções do núcleo encontradas nos sistemas operacionais são:
•	 Tratamento de interrupções e exceções;
•	 Criação e eliminação de processos e threads;
•	 Sincronização e comunicação entre processos e threads;
•	 Gerência de memória;
•	 Gerência do sistema de arquivos;
•	 Gerência dos dispositivos de entrada e saída;
•	 Suporte a redes locais e distribuídas;
•	 Contabilização do uso do sistema;
•	 Auditoria e segurança do sistema.
Sistemas Operacionaise-Tec Brasil 50
Podemos destacar como funções principais do kernel do sistema operacional 
as quatro gerências: gerência de processos, gerência de memória, gerência 
de entrada e saída, e gerência de sistema de arquivos.
Existem vários pontos de vista pelos quais poderíamos analisar um sistema 
operacional:
•	 Examinando os serviços oferecidos aos usuários;
•	 Analisando a interface disponibilizada aos usuários e programadores;
•	 Desmontando o sistema em seus componentes mais básicos.
Procure enumerar as atividades que você realiza e recursos que você costu-
ma utilizar em computadores no seu dia a dia, para depois comparar com os 
serviços prestados por um sistema operacional, listados ao final desta aula.
4.6. Sistemas em lote
Os primeiros computadores eram máquinas dependentes de um operador. 
Os dispositivos de entrada comuns eram leitoras de cartões e unidades de 
fita, e os de saída eram impressoras, unidades de fita e perfuradoras de car-
tões. O usuário não interagia diretamente com o computador. Em vez disso, 
ele preparava uma tarefa (job), que consistia no programa, dados e algumas 
informações de controle sobre a natureza da tarefa (cartões de controle) e 
o entregava ao operador do computador. Algum tempo depois o resultado 
do programa podia ser obtido como uma listagem, uma fita, novo pacote 
de cartões ou uma listagem dos conteúdos dos registradores no caso de erro 
do programa.
O sistema operacional nesses primeiros computadores era bem simples. Sua 
principal tarefa era transferir controle automaticamente de uma tarefa para 
a próxima tarefa. O sistema operacional estava sempre residente na memória 
e executava uma tarefa de cada vez.
Para acelerar o processamento, os operadores reuniam as tarefas em lotes 
com necessidades semelhantes e os executavam no computador como um 
grupo. Assim os programadores deixavam seus programas com o operador e 
o operador classificava os programas em lotes com requisitos semelhantes. À 
medida que o computador ficava disponível, executava outro lote ou batch. 
O monitor residente foi 
considerado o primeiro sistema 
operacional (rudimentar). 
Era um programa que ficava 
permanentemente em memória 
e sua função era transferir a 
execução de um job para outro.
e-Tec BrasilAula 4 – Elementos de hardware e software – Parte II 51
A saída de cada tarefa seria enviada de volta ao programador apropriado.
Neste ambiente de execução, a CPU ficava muitas vezes ociosa porque 
as velocidades dos dispositivos mecânicos de E/S (leitores de cartão) 
eram intrinsecamente menores do que as dos dispositivos eletrônicos 
(CPU). Com o tempo, é claro, melhorias na tecnologia e a introdução 
de discos resultaram em dispositivos de E/S mais rápidos (Silberschatz, 
Galvin e Gagne, 2000. p. 5).
4.7. Escalonamento de tarefas e multipro-
gramação
A introdução da tecnologia de disco permitiu que o sistema operacional 
mantivesse todas as tarefas em um disco, em vez de em uma leitora de car-
tões serial. Surge então o conceito de escalonamento de tarefas e posterior-
mente de multiprogramação.
A multiprogramação aumenta a utilização da CPU, organizando as tarefas 
de forma que a CPU esteja sempre ocupada. Assim, o SO mantém várias 
tarefas na memória simultaneamente, todas competindo pelos recursos do 
computador, conforme Figura 4.4.
Programa/TarefaPrograma/Tarefa
Programa/Tarefa Programa/Tarefa
Memória UCP
Dispositivos de E/S
Figura 4.4: Sistema multiprogramável ou multitarefa
Fonte: Adaptado de Machado, 2004 
O sistema operacional escolhe e começa a executar a tarefa carregada na 
memória. Em alguns momentos a tarefa que está em execução deverá espe-
Não é muito comum vermos 
tarefas sendo executadas em 
batch. Entretanto, existem 
alguns procedimentos que 
guardam bastante semelhança: 
os processos de backup e 
recuperação de bancos de 
dados, bem como o processo 
de inicialização do Windows. 
Em ambos os casos uma série 
de tarefas são executadas de 
forma automática, em sequência 
e de forma mais ou menos 
independente da vontade do 
usuário.
Sistemas Operacionaise-Tec Brasil 52
rar a conclusão de alguma outra tarefa, como uma operação de E/S, que é 
muito mais lenta. Em um sistema operacional não multiprogramado, a CPU 
ficaria ociosa. Em um sistema de multiprogramação, o sistema operacional 
simplesmente passa para outra tarefa e a executa. Quando esta segunda 
tarefa precisar esperar, a CPU passará para outra tarefa e assim por diante. 
Por fim, a primeira tarefa terminará a sua operação de E/S e terá a CPU de 
volta. Neste esquema, a CPU nunca fica ociosa.
Todos os jobs, ou tarefas, que entram no sistema são mantidos num pool 
de jobs (espécie de fila). Esse pool de jobs consiste em todos os processos 
residentes no disco aguardando alocação da memória principal (espaço na 
memória). O número de jobs que pode ser mantido simultaneamente na 
memória principal geralmente é muito menor do que o número de jobs que 
pode estar no pool de jobs. Se vários jobs estiverem prontos para serem car-
regados na memória e se não houver espaço suficiente para todos, o sistema 
operacional deverá fazer a escolha. Essa tomada de decisão é chamada de 
escalonamento de tarefas ou de jobs.
Os sistemas em batch multiprogramados forneciam um ambiente no qual os 
vários recursos do sistema, como por exemplo a CPU, memória e dispositivos 
periféricos, eram utilizados de forma eficaz, mas não permitiam a interação 
do usuário com o sistema de computação. Tempo compartilhado (time sha-
ring) ou multitarefa é uma extensão da multiprogramação: a CPU executa 
vários jobs alternando entre eles (multiprogramação), mas as trocas ocorrem 
com tanta frequência que o usuário pode interagir com seu programa como 
se tivesse uma máquina exclusiva para ele. Assim se permite a comunicação 
direta entre o usuário e o sistema. Devido a esse tipo de interação, os siste-
mas de tempo compartilhado também ficaram conhecidos como sistemas 
on-line ou de tempo real (real time). O usuário passa instruções ao sistema 
operacional ou a um programa diretamente, usando o teclado ou um mou-
se, e espera por resultados imediatos. O tempo de resposta deve ser curto.
Um sistema operacional de tempo compartilhado permite que muitos usu-
ários compartilhem o computador ao mesmo tempo. Como cada ação ou

O que é trap em sistemas operacionais?

Um outro tipo de interrupção são as interrupções síncronas, muitas vezes também chamadas de traps. Traps ocorrem em consequência da instrução sendo executada. Algumas são geradas pelo hardware, para indicar por exemplo overflow em operações aritméticas ou acesso a regiões de memória não permitidas.

Qual a diferença entre interrupção e traps?

Diferença essencial entre Trap e Interrupção: Traps são síncronas e Interrupções assíncronas. Traps - acontecem sincronamente porque resultam da execução do próprio programa; Interrupções - podem ser causadas por agentes externos (Ex.: o apertar de uma tecla do teclado). Ocorrência de um evento externo.

Qual é a diferença entre um Trap e uma interrupção qual é o uso de cada uma das funções?

A interrupção está relacionada com os dispositivos de hardware, enquanto a instrução trap está relacionada com chamadas de sistema de programas de usuário. Ao contrário do trap, a interrupção não é visível para o programa de usuário. Ambas são exceções, ou seja, ambas desviam a CPU do fluxo de execução atual.

Quais são os tipos de sistemas operacionais?

Os sistemas operacionais mais comuns que existem para computadores e que o mercado oferece são: Microsoft Windows, Mac OS X e Linux..
Microsoft Windows. A empresa Microsoft desenvolveu o sistema operacional Windows em meados da década de 80. ... .
Mac OS X. Este é o sistema operacional desenvolvido pela Apple Inc. ... .
Linux Ubuntu..