Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Links: Respostas do Teste/Lista 5 (Cap 5) | Respostas do Teste/Lista 6 (Cap 6) – Página 4 | Lista 
de Revisão P2 – Página 7 
Teste 4 – Cap 4 
1. Como o MS-DOS implementa o acesso aleatório aos arquivos? 
Abrir o arquivo usando a chamada open, e para acessar uma posição específica dentro 
do arquivo utiliza-se a chamada seek para mover o ponteiro para a localização 
desejada, e então é possível usar as funções read e write para leitura e escrita, 
respectivamente. 
2. A chamada de sistema open no UNIX é essencial? Quais seriam as consequências de 
não tê-la? 
Não é essencial, entretanto, sem ela, toda vez que desejasse realizar uma operação de 
leitura ou gravação/escrita, seria necessário especificar o nome do arquivo, tornando o 
código mais complexo, além disso, teria que procurá-lo na árvore de diretórios a cada 
vez que quisesse acessá-lo, o que poderia impactar na flexibilidade e eficiência. As 
tarefas de abertura de arquivos, como a verificação de permissões, teriam de ser feitas 
manualmente. 
3. Sistemas que dão suporte a arquivos sequenciais sempre têm uma operação para 
rebobinar os arquivos. Os sistemas que suportam acesso aleatório precisam disso 
também? Por que? 
Não. Pois como não são sequenciais, é possível ler o arquivo reajustando o ponteiro e 
acessando o byte 0, que é a posição inicial do arquivo e não é afetada por operações 
de leitura ou gravação anteriores. 
4. Alguns sistemas operacionais fornecem uma chamada de sistema rename para 
atribuir um novo nome a um arquivo. Há alguma diferença entre usar esta chamada 
e apenas copiá-lo para um novo arquivo com o novo nome e depois remover o 
antigo? 
A operação rename renomeia o arquivo, mas mantém as características (como tempo 
da última modificação ou o de criação), o que não ocorre copiar o arquivo com um 
novo nome e excluindo o antigo, o que altera as características. 
5. Um certo sistema de arquivos usa blocos de disco de 2 KB. O tamanho médio do 
arquivo é de 1 KB. Se todos os arquivos forem exatamente de 1 KB, qual a fração de 
espaço em disco que será desperdiçada? Você acha que o desperdício para um 
sistema de arquivos real será mais alto ou mais baixo que este? Explique. 
Se todos os arquivos tivessem 1 KB, cada bloco de 2 KB conteria um arquivo e 1 KB de 
espaço desperdiçado. Tentar colocar dois arquivos em um bloco não é permitido 
porque a unidade usada para rastrear os dados é o bloco, não o semibloco (o restante 
da parte não utilizada do bloco). Isso leva a 50% de espaço desperdiçado. Na prática, 
todo sistema de arquivos possui arquivos grandes e também muitos arquivos 
pequenos, e esses arquivos utilizam o disco com muito mais eficiência. 
6. Quantas operações em disco são necessárias para buscar o i-node do arquivo 
/usr/ast/cursos/os/handout.t? Suponha que o i-node para o diretório-raiz esteja na 
memória, mas nenhum outro componente ao longo do caminho se encontre na 
memória. Suponha também que todos os diretórios caibam em um único bloco de 
disco. 
Para localizar um arquivo é realizada uma operação de leitura em disco a cada arquivo 
no caminho tanto para abrir o diretório quanto para o i-node: 
 
diretório para / 
i-node para /usr 
diretório para /usr 
i-node para /usr/ast 
diretório para /usr/ast 
i-node para /usr/ast/courses 
diretório para /usr/ast/courses 
i-node para /usr/ast/courses/os 
diretório para /usr/ast/courses/os 
i-node para /usr/ast/courses/os/handout.t 
No total, são necessárias 10 leituras de disco. 
7. Cite uma vantagem das ligações estritas (hard links) sobre as ligações simbólicas e 
uma vantagem destas sobre aquelas. 
Vantagem da Hard link sobre a ligação simbólica: 
Se você criar um hard link para um arquivo e, em seguida, excluir o arquivo original, o 
conteúdo ainda estará disponível por meio do hard link, pois estes estão associados ao 
mesmo i-node e bloco de dados do arquivo original, promovendo uma igualdade entre 
os arquivos, o que não ocorre na ligação simbólica, o que também evita sobrecarga 
extra na resolução de um link. 
Vantagem da Ligação simbólica sobre a hard link: As ligações simbólicas apresentam 
maior flexibilidade e interoperabilidade dos que os hard links, pois podem ser usadas 
para criar atalhos e referências para facilitar a organização do sistema de arquivos, 
sem necessidade da assossiação direta ao i-node, ou apontar arquivos ou diretórios 
em diferentes sistemas de arquivos ou até mesmo em locais remotos por meio de 
URLs. 
(OBS: Se colocar apenas a parte da vantagem da flexibilidade e interoperabilidade nas 
vantagens da ligação simbólica já está bom) 
8. Duas estudantes de SI estão discutindo sobre i-nodes. A estudante A argumenta que 
as memórias têm se tornado tão abundantes e baratas que, quando um arquivo é 
aberto, é mais simples e mais rápido apenas buscar uma nova cópia do i-node na 
tabela de i-nodes em vez de buscá-lo na tabela inteira e verificar se já está lá. A 
estudante B discorda argumentando que isso causaria problemas. Qual delas está 
certa e porque? 
O estudante B está certa. Ter duas cópias do i-node na tabela de i-nodes ao mesmo 
tempo, especialmente quando ambos estão sendo atualizados, pode levar a problemas 
sérios no sistema de arquivos, pois se ambos os processos que podem abrir um 
arquivo simultaneamente, atualizarem o arquivo ao mesmo tempo, podem ocorrer 
problemas de concorrência, e se um processo sobrescrever as alterações do i-node 
feitas por outro processo, os dados do arquivo e os blocos de disco associados podem 
ficar inconsistentes. Quando os i-nodes são gravados de volta no disco, a última cópia 
gravada substituirá as alterações feitas pelo outro. Isso pode resultar em perda de 
dados, inconsistências no sistema de arquivos e corrupção de arquivos. Portanto, em 
vez de buscar uma nova cópia do i-node toda vez que um arquivo é aberto, os sistemas 
operacionais geralmente adotam abordagens de cache, aonde quando um arquivo é 
aberto, o SO carrega o i-node na memória e o mantém em um cache, então todos os 
processos compilados tem a mesma cópia do i-node, e qualquer alteração feita por um 
processo será visível para outros processos que também estãoacessando o mesmo 
arquivo. 
(OBS – A parte em Itálico e sublinhado é opcional, e coloque caso queira deixar a 
resposta ainda mais completa, mas só o resto já está bom) 
9. A alocação contígua de arquivos leva a uma fragmentação do disco. Essa 
fragmentação é externa ou interna? Faça uma analogia com o que foi discutido no 
capítulo 3 (gerenciamento de memória). 
Leva a fragmentação externa do disco, pois lacunas de blocos livres são deixadas 
quando arquivos são excluídos, ou seja, entre as unidades de alocação, e não dentro 
dos arquivos, como a que ocorre em segmentação pura. 
10. a) Quais são os itens que compõem um sistema de arquivos? 
Superbloco, diretório-raíz, i-nodes, todos os outros arquivos e diretórios, bem como o 
gerenciamento do espaço livre (mapas de bits e lista de ponteiros). 
b) Qual a função principal de um sistema de diretórios? 
Mapear o nome ASCII do arquivo na informação necessária para localizar seus dados. 
c) Quais são as duas formas de armazenar os atributos dos arquivos (data, dono, etc) 
em um diretório? 
Diretório com atributos na entrada de diretório: Atributos de um arquivo, como o 
proprietário, a data de criação e informações de proteção, são armazenados 
diretamente na entrada de diretório associada ao arquivo, com cada entrada de 
diretório contém um espaço para atributos fixos, pode levar à fragmentação do 
diretório quando os arquivos são excluídos, deixando lacunas de tamanhos variáveis. 
Diretório com atributos no i-node: Armazena os atributos dos arquivos nos próprios i-
nodes, e a entrada de diretório contém apenas o nome do arquivo e um número de i-
node, sendo mais eficiente em termos de espaço no diretório, pois os atributos não 
precisam ser armazenados repetidamente em cada entrada. 
d) O quesão I-nodes? 
 Método de alocação aonde cada arquivo é associado a uma estrutura de dados 
chamada i-node (index-node ou nó-índice), que lista os atributos e os endereços de 
disco dos blocos do arquivo. O i-node contém informações sobre o arquivo, como seu 
nome, permissões, data de modificação e, mais importante, os endereços dos blocos 
no disco onde os dados do arquivo estão armazenados, permitindo encontrar todos os 
blocos de disco que compõem o arquivo. 
11. Indique verdadeiro (V) ou falso (F) para cada uma das afirmações abaixo. 
(F) O MBR (registro mestre de inicialização) não influencia qual o sistema operacional 
será carregado 
(F) Na alocação contígua dos arquivos, o número de blocos independe do tamanho do 
arquivo 
(V) Uma das funções de um S.O. é gerenciar quem pode acessar determinado arquivo. 
F – Pois o MBR é o setor 0 do disco, usado para inicializar o computador, e marca a 
partição ativa, usada para inicializar o sistema operacional, na tabela de partições ao 
final do MBR. 
F – Como a alocação é sequencial, e cada arquivo é alocado em blocos consecutivos de 
disco, sendo armazenados de forma que cada arquivo comece em um novo bloco, o 
número de blocos depende do tamanho do arquivo a ser alocado. 
V - O sistema de arquivos é o módulo responsável, dentro do SO, pelo gerenciamento 
do conteúdo dos discos do sistema. Esse gerenciamento inclui tanto o controle de 
acesso aos mesmos (seguranca), como o controle da localização e manuseio dos 
conteúdos de cada arquivo. 
12. Uma das formas de implementação de arquivos é a alocação por lista encadeada, 
onde a primeira palavra de cada bloco é usada como ponteiro para o próximo bloco 
e o restante do bloco para dados. 
a. Cite uma vantagem e uma desvantagem deste tipo de implementação. 
Nenhum espaço é perdido na fragmentação (exceção do último) e basta armazenar a 
entrada do primeiro bloco. O acesso aleatório é lento, uma vez que para chegar a um 
determinado bloco, o sistema operacional precisa seguir a cadeia de ponteiros a partir 
do início, lendo cada bloco sequencialmente, até chegar ao bloco desejado. 
b. Cite uma vantagem da tabela de alocação de arquivos (FAT) sobre uma lista 
encadeada. 
Como a tabela FAT está totalmente na memória, o acesso aleatório é mais rápido, 
permitindo um acesso rápido aos blocos de disco. 
Teste 5 – Cap 5 
1 - Explique como funciona uma inicialização, desde o momento em que a máquina é ligada 
até o instante do SO ser carregado. 
 
A BIOS lê e executa o MBR. O MBR possui no seu final uma tabela de partições, e ele marca 
uma delas como “ativa”, que será a partição usada para inicializar o sistema operacional 
executando seu primeiro bloco, após a bios ler o MBR. Ele encontra a partição ativa, 
executando seu 1º bloco, e o SO contido nele é carregado. 
 
2 - Qual a função do MBR? O MBR (registro mestre de inicialização) influencia qual sistema 
operacional será carregado? Por que? 
 
É o "Setor 0" do disco, usado para inicializar o computador. Ele contém uma tabela de 
partição, que lista as informações sobre as partições no disco, como onde cada uma começa e 
termina. Uma das partições na tabela é marcada como "ativa", o que significa que é a partição 
usada para inicializar o sistema operacional. 
3 - Um RAID nível 3 é capaz de corrigir erros de bit único usando somente um disco de 
paridade. O RAID nível 2 também só pode corrigir um erro e gasta mais discos para fazê-lo. 
Afinal, qual o propósito do RAID nível 2? 
O RAID nível 2 pode não apenas se recuperar de unidades travadas, mas também de erros 
transitórios não detectados. Se uma unidade fornecer um único bit incorreto, o RAID nível 2 
corrigirá isso, mas o RAID nível 3 não. 
O propósito do RAID nível 2 é lidar não apenas com falhas de unidades (como o RAID nível 3), 
mas também com erros transitórios não detectados (erro que ocorre temporariamente e pode 
não ser detectado imediatamente). Se uma unidade no conjunto RAID nível 2 fornecer um 
único bit incorreto, o RAID nível 2 é capaz de corrigir esse erro. 
Já o 3, se ocorrerem erros em mais de um bit dentro do mesmo bloco ou se houver erros em 
diferentes blocos simultaneamente, o RAID nível 3 pode não ser capaz de corrigir esses erros, 
uma vez que a paridade é usada para proteger apenas contra falhas em bits individuais 
referentes a paridade dentro de blocos específicos. 
 
4 - As requisições de um disco chegam ao driver do disco na seguinte ordem dos cilindros: 
10, 22, 20, 2, 40, 6 e 38. Um posicionamento leva 6 ms por cilindro movido. Quanto tempo é 
necessário para cada um dos algoritmos (FCFS, SSF, elevador e elevador modificado), 
considerando que o braço está, inicialmente, no cilindro 20? Dica: fazer o cálculo em número 
de cilindros e depois multiplicar por 6 ms. 
 
Primeiro se calcula a soma das diferentes das distâncias entre as requisições e multiplica-se 
pelo tempo de posicionamento. 
FCFS - Neste primeiro a soma das distâncias é calculada como a ordem de chegada, do 
primeiro ao último: 
10 -> 22 -> 20 -> 2 -> 40 -> 6 -> 38 = 22-10 = 12 | 22 - 20 = 2 | 20 - 2 = 18 | 40 - 2 = 38 | 40 - 6 = 
34 = 38 - 6 = 32 
) 10 + 12 + 2 + 18 + 38 + 34 + 32 = 146 cilindros * 6 ms = 876 ms 
 
SSF - Neste, a soma das distâncias é calculada com a ordem dos valores mais próximos de 20, 
ou seja da menor distância para o 2 para a maior 
20 -> 20 -> 22 -> 10 -> 6 -> 2 -> 38 -> 40 
20 - 20 = 0 | 22 - 20 = 2 | 22 - 10 = 12 | 10 - 6 = 4 | 6 - 2 = 4 | 38 - 2 = 36 | 40 - 38 = 2 
0 + 2 + 12 + 4 + 4 + 36 +2 = 60 cilindros * 6 ms = 360 ms 
 
Elevador - Neste, é preciso o enunciado informar em qual direção o braço está se movendo. Se 
for para cima, vai primeiro em direção aos maiores valores, do menor para o maior, e depois 
se não haver valores mais altos, ele pega os valores mais baixos, começando pelo menor. Se 
for para baixo, é o contrário. Como este é o mesmo exercício do n 31 do capitulo 5 do livro, 
pág 318, então suponho que seja o braço pra cima. 
20 -> 20 -> 22 -> 38 -> 40 -> 10 -> 6 -> 2 
0 + 2 + 16 + 2 + 30 + 4 + 4 = 58 cilindros * 6 ms = 348 ms 
 
https://acervolima.com/algoritmo-de-agendamento-de-disco-c-scan/ 
Elevador Modificado - Neste, é preciso ir de uma extremidade para a outra extremidade. 
Primeiro ele vai para a extremidade mais a direita, depois volta para 0, e vai para a 
extremidade esquerda. Para isso, ordenamos as solicitações: 
2, 6, 10, 20, 22, 38, 40 
Como o braço está inicialmente em 20, ele se move para o 22, depois para o 38, e depois para 
o 40, volta para o 0, se move pro 2, depois 6, e 10. 
Então, temos: 20 -> 22 -> 38 -> 40 -> 0 -> 2 -> 6 -> 10 
2 + 16 + 2 + 40 + 2 + 4 + 4 = 70 * 6 = 420 ms. 
 
5 - Em que caso (e porque) o algoritmo do elevador modificado, onde a varredura do disco é 
sempre feita na mesma direção, pode ser bem melhor do que o algoritmo do elevador 
original? 
 
A versão modificada é melhor que a original, pois possui maior previsibilidade e consistência 
nos tempos de resposta em comparação com o Elevador Original, pois sempre varre as 
solicitações na mesma direção, sem inverter a direção quando atende a última requisição na 
extremidade mais alta ou mais baixa, isso minimiza flutuações nos tempos de resposta, 
aumentando a velocidade. Na pior das hipóteses, uma solicitação de leitura/gravação não é 
atendida por quase duas varreduras completas de disco no algoritmo elevador, pois ele inverte 
a ordem quando atinge uma extremidade mais alta ou baixa, enquanto é no máximo uma 
varredura completa de disco no algoritmo modificado pois ele sempre as varre na mesma 
direção. 
 
6 - Explique as vantagens e desvantagens entre interrupções precisas e imprecisas em uma 
máquina superescalar. 
 
Interrupções Precisas 
Vantagens: Simplicidade de código no sistema operacional já que o estado da máquina está 
bem definido. 
Desvantagens: Aumenta a complexidade do design do chip e da área do chip, o que pode 
resultar emCPU mais lenta. 
Nas Interrupções Imprecisas, os criadores de SO tem a vida dificultada, pois precisam descobrir 
quais instruções foram parcialmente executadas e até que ponto. 
 
7 - a) Quais as desvantagens da E/S programada que a E/S usando interrupção resolve e por 
que? 
 
Na E/S Programada, a CPU não pode executar outras tarefas enquanto aguarda a conclusão da 
operação de E/S por conta do busy-waiting. A E/S orientada a Interrupções resolve isso, 
quando a chamada de sistema para imprimir é feita, o buffer é copiado para o espaço do 
núcleo, e o primeiro caractere é enviado para a impressora quando ela está pronta, após o 
envio do caractere, é gerada uma interrupção que para o processo em execução, salvando seu 
estado, e executando a rotina de tratamento de interrupção da impressora, então, a CPU 
chama o escalonador, permitindo a execução de outros processos enquanto aguarda. Após 
isto, o processo original é retomado a partir do ponto onde foi interrompido. 
 
b) E quais as desvantagens da E/S usando interrupção que a E/S usando DMA resolve e por 
que? 
 
A E/S orientada a interrupções a CPU é notificada a cada transferência de dado entre o 
dispositivo de E/S e a memória, resultando em um grande número de interrupções, 
aumentando a carga na CPU. A E/S com uso de DMA possui uma vantagem em relação a E/S de 
interrupções, pois reduz o número de interrupções, especialmente com grande volume de 
dados, em vez de uma interrupção por caractere, há apenas uma por buffer impresso. 
 
8 - a) Cite 5 funções dos drivers de dispositivos de E/S. 
Basta citar 5 dentre essas 10: 
Aceitar solicitações abstratas de leitura/escrita e garantir sua execução, inicializar o dispositivo 
caso for preciso, gerenciar necessidades de energia, registrar eventos, verificar parâmetros de 
entrada, traduzir termos abstratos (gerais) para concretos (específicos do driver), conferir se 
um dispositivo está em uso, emitir comandos para o dispositivo, tratar interrupções e verificar 
ocorrência de erros. 
 
b) Qual a principal vantagem de um driver ser implementado no espaço do usuário? 
 
As vantagens são isolação e a segurança do sistema operacional. Ao executar drivers de 
dispositivo no espaço do usuário, eles são isolados do núcleo do sistema operacional. Isso 
significa que, se um driver tiver bugs ou falhas, esses problemas geralmente não afetarão 
diretamente o núcleo do sistema operacional. Além disso, esse isolamento ajuda a mitigar 
possíveis riscos de segurança associados a bugs ou explorações nos drivers, uma vez que seu 
impacto seria limitado ao espaço do usuário. Desenvolver e depurar drivers no espaço do 
usuário pode ser mais fácil, pois não requer privilégios de acesso ao núcleo do sistema 
operacional. 
Lista de Revisão – P2 
1 - Uma das formas de implementação de arquivos é a alocação por lista encadeada, onde a 
primeira palavra de cada bloco é usada como ponteiro para o próximo bloco e o restante do 
bloco para dados. 
a) Cite uma vantagem e uma desvantagem deste tipo de implementação. 
Nenhum espaço é perdido na fragmentação e é necessário armazenar apenas a entrada do 1º 
bloco (Pode citar uma das duas como vantagem). O acesso aleatório é lento, uma vez que para 
chegar a um determinado bloco, o sistema operacional precisa seguir a cadeia de ponteiros a 
partir do início, lendo cada bloco sequencialmente, gerando muitas leituras. 
b) Cite uma vantagem da tabela de alocação de arquivos (FAT) sobre uma lista encadeada 
Podem ser citadas duas vantagens (escolha uma): 
 - Como a tabela está totalmente na memória, o acesso aleatório é mais rápido do que a por 
lista encadeada, permitindo um acesso rápido aos blocos de disco. 
- Na tabela de alocação de arquivos (FAT) todo o bloco fica disponível para armazenamento de 
dados para simplificar o acesso aos dados, o que não ocorre na alocação por lista encadeada, 
visto que os ponteiros ocupam parte do bloco e só o resto é usado para o armazenamento dos 
dados do arquivo. 
c) O que são I-NODES? 
É uma estrutura de dados, usado em um método de alocação de arquivos, aonde cada arquivo 
é associada a ela, e que lista os atributos e os endereços de disco dos blocos do arquivo. O i-
node contém informações sobre o arquivo, como seu nome, permissões, data de modificação 
e, mais importante, os endereços dos blocos no disco onde os dados do arquivo estão 
armazenados, permitindo encontrar todos os blocos de disco que compõem o arquivo. 
2 - Quando vários usuários necessitam trabalhar juntos em um projeto, muitas vezes existe a 
necessidade do compartilhamento de arquivos. As mudanças realizadas por um usuário 
devem sempre ser visíveis a outro que compartilha o mesmo arquivo. Um dos métodos para 
implementar este compartilhamento é a ligação simbólica. Descreva como funciona a ligação 
simbólica. 
Um usuário cria um novo arquivo de ligação e o insere em seu diretório, então esse arquivo 
link contém apenas o caminho para o arquivo original de outro usuário, quando o usuário que 
criou o arquivo link lê o arquivo de ligação, o sistema operacional o direciona para o arquivo 
real. Apenas o verdadeiro proprietário tem um ponteiro para o i-node, e os outros usuários 
possuem apenas nomes de caminhos. 
3 - Qual a principal característica de uma E/S programada e qual sua principal desvantagem? 
A E/S programada é uma abordagem simples para a E/S aonde a CPU realiza todas as 
operações de E/S e gerencia todas as etapas da mesma, entretanto, nela, a CPU não consegue 
executar outras tarefas enquanto aguarda a finalização da operação E/S. 
4 - Suponha que um processo deseja imprimir uma cadeia de caracteres. Após a impressora 
imprimir o primeiro caracter e gerar uma interrupção, qual deverá ser o comportamento da 
CPU? 
O processo em execução é parado e seu estado é salvo, a rotina de tratamento de interrupção 
da impressora é executada, então a CPU chama o escalonador, permitindo a execução de 
outros processos enquanto aguarda o término da operação. Logo após, o processo original é 
retomado a partir do ponto onde foi interrompido. 
5 - Cite 5 funções dos drivers de dispositivos de E/S. 
Aceitar solicitações abstratas de leitura/escrita e garantir sua execução, inicializar o dispositivo 
caso for preciso, gerenciar necessidades de energia, registrar eventos, verificar parâmetros de 
entrada. 
6 - Qual a principal vantagem de um driver ser implementado no espaço do usuário? 
Os drivers são isolados do núcleo do sistema operacional. Isso significa que, se um driver tiver 
bugs ou falhas, esses problemas geralmente não afetarão diretamente o núcleo do sistema 
operacional, o que contribui para maior segurança do sistema, pois ajuda a mitigar possíveis 
riscos de segurança associados a bugs ou explorações nos drivers, uma vez que seu impacto 
seria limitado ao espaço do usuário. 
7 - As requisições de um disco chegam ao driver do disco na seguinte ordem dos cilindros: 
10, 23, 20, 2, 39, 6 e 37. Um posicionamento leva 6 ms por cilindro movido. Quanto tempo é 
necessário para cada um dos algoritmos abaixo, considerando que o braço está, 
inicialmente, no cilindro 20? Dica: fazer o cálculo em número de cilindros e depois 
multiplicar por 6 ms. 
a) SSF (Short Seek First – busca mais próximo primeiro) 
20 -> 20 -> 23 -> 10 -> 6 -> 2 -> 37 -> 39 
20 - 20 = 0 | 23 - 20 = 3 | 23 - 10 = 13 | 10 - 6 = 4 | 6 - 2 = 4 | 37 - 2 = 35 | 39 - 37 = 2 
OBS - Basta comparar o 20 com os numeros dados e ver a diferença que cada um tem para o 
20, ordenando da menor diferença pra maior diferença 
0 + 3 + 13 + 4 + 4 + 35 + 2 = 61 cilindros * 6 ms = 366 ms 
b) algoritmo do elevador (inicialmente movendo-se para cima) 
20 -> 20 -> 23 -> 37 -> 39 -> 10 -> 6 -> 2 -> 
OBS - Basta ir inicialmente gradativamente em direção aos valores mais altos, quando chegar 
no mais alto, volta para os mais baixos a partir do maior número restante 
0 + 3 + 14 + 2 + 29 + 4 + 4 = 56 cilindros* 6 ms = 336 ms 
8. (Aula de 7/12/2023) 
a) Quais são as 4 estratégias para lidar com impasses? 
Ignorar o Problema: Simplesmente ignorar os impasses, esperando que não ocorram ou que se 
resolvam por conta própria. 
Detecção e Recuperação: Permitir que os impasses ocorram, detectálos quando acontecem e 
tomar medidas para recuperar o sistema. 
Evitar Dinamicamente: Evitar impasses através de uma alocação cuidadosa de recursos, 
suspensões estratégicas e análise contínua do grafo de recursos (Holt). 
Prevenção Estrutural: Modificar estruturalmente o sistema para negar uma ou mais das quatro 
condições necessárias para a ocorrência de um impasse. 
b) Qual a estratégia usada para prevenir impasses? 
A de prevenção estrutural geralmente é a utilizada para prevenir impassses, objetivando negar 
uma ou mais das quatro condições necessárias para a ocorrência de um impasse. 
 c) Descreva uma das duas soluções para evitar a condição de espera circular. 
Impedir que um processo solicite vários recursos ao mesmo tempo, aonde só poderá solicitar 
um recurso por vez de acordo em uma ordem hieraráquica cresente numérica e/ou limitar o 
número de recursos que um processo pode possuir simultaneamente, se já possui um recurso 
e deseja outro, ele deve primeiro liberar o recurso existente.

Mais conteúdos dessa disciplina