Resolução Lista de exercício SO
Por: Sara • 21/8/2018 • 2.015 Palavras (9 Páginas) • 269 Visualizações
...
(a) FCFS? (fifo: seguir a ordem dada exatamente do jeito q esta e ir somando as distancias)
10 + 12 + 2 + 18 + 38 + 34 + 32 = 146 cilindros = 876 mseg.
(b) SSF? (ir procurado o mais proximo e ir somando as distancias)
0 + 2 + 12 + 4 + 4 + 36 +2 = 60 cilindros = 360 mseg.
(c) Algoritmo do elevador (inicialmente movendo-se para cima)? (começando em 20 ele vai fazendo todos os valores em sequencia acima de 20 até o último valor e depois ele desce pegando em sequencia os valores q ainda não foram utilizados até o menor)
0 + 2 + 16 + 2 + 30 + 4 + 4 = 58 cilindros = 348 mseg.
Em todos os casos, o braço está inicialmente no cilindro 20.
AVULSO
3) Qual a diferença entre um dispositivo de bloco e um dispositivo de caracter?
Um dispositivo de blocos é aquele que armazena informação em blocos de tamanho fixo, cada um com seu próprio endereço. Os tamanhos de blocos comuns variam de 512 bytes a 32.768 bytes. Todas as transferências estão em unidades de um ou mais blocos inteiros (consecutivos). A propriedade essencial de um dispositivo de blocos é que cada bloco pode ser lido ou escrito independentemente de todos os outros. Discos rígidos, CD-ROMs e pen drives são os dispositivos de blocos mais comuns.
Dispositivo de caractere, o qual envia ou recebe um fluxo de caracteres, sem considerar qualquer estrutura de blocos. Ele não é endereçável e não dispõe de qualquer operação de posicionamento. Impressoras, interfaces de redes, mouses e a maior parte de outros dispositivos que são diferentes do disco podem ser considerados dispositivos de caractere.
4) Como funciona a E/S mapeada na memória? Explique
Cada controlador de dispositivo tem seus registradores. Esses registradores são usados para comunicar com a CPU. Por meio da escrita nesses registradores do controlador de dispositivo, o S.O pode comandar o dispositivo para aceitar, executar, desligar.
A partir da escrita nesses registradores, o S.O pode saber o estado de um dispositivo, se ele está apto a receber um novo comando, etc. Além dos registradores, os dispositivos têm buffers, no qual o S.O lê e escreve.
COMO A CPU SE COMUNICA COM OS REGISTRADORES DO CONTROLADOR E COM OS BUFFERS DO DISPOSITIVO?
Há duas possibilidades:
Cada registrador é associado a um numero de porta de e/s. Usando uma instrução, a CPU pode ler o registrador do controlador e armazenar o resultado no seu registrador. A mesma pode escrever o conteúdo do registrador da CPU para o registrador de controle.
Visa mapear todos os registradores de controle no espaço de endereçamento. Quando a CPU quer ler uma palavra, ou da memória, ou da e/s, a CPU coloca o endereço que precisa nas linhas do barramento. Um segundo sinal é emitido, ele informa se o espaço requisitado é da memória, ou da e/s.
Se o espaço requisitado é da memória, a memória responderá a requisição, se for da e/s o dispositivo e/s responderá.
Se existe somente um espaço, cada módulo de memória e cada dispositivo de e/s compara as linhas de endereço associado a cada dispositivo de e/s, compara as linhas do endereço com a faixa de endereço associada a cada um. Se os endereços estão dentro da faixa, esse componente responde a requisição.
5) Como funciona o acesso direto à memória? Explique (a transferência dos dados para a memória é controlada por um dispositivo especializado, sem envolver processador)
Quando o DMA é usado, o procedimento é diferente. A CPU programa o controlador do DMA, inserindo valores em seus registradores, de modo que ele saiba que tem algo para transferir e para onde transferir.
Ele emite um comando para o controlador de disco, ordenando carregar os dados do disco para seu buffer interno e então verificar a soma de verificação. Quando os dados que estão no buffer do controlador são validos, o DMA pode começar.
O controlador do DMA inicia a transferência emitindo pelo barramento uma requisição de leitura para o controlador de disco. Normalmente, o endereço de memoria, para onde escrever, está nas linhas de endereço do barramento, de modo que quando o controlador de disco busca a próxima palavra do seu buffer interno ela sabe onde escrever.
A escrita na memoria é outro ciclo de barramento. Quando a escrita está completa, o controlador de disco emite um sinal de confirmação para o controlador, também pelo barramento. O controlador de DMA incrementa o endereço de memoria e diminui o contador de bytes. Se o contador é maior que O, os passos são repetidos até que ele se torne 0. Nesse momento, o controlador de DMA interrompe a CPU para deixa-la ciente de que a transferência está completa. Quando o S.O inicia o atendimento da interrupção, ele não precisa copiar o bloco de disco para a memoria, pois ele já está lá.
6) Qual a diferença entre interrupções precisas e imprecisas?
Precisa
1. O contador de programa (program counter — PC) é salvo em um lugar conhecido.
2. Todas as instruções anteriores àquela apontada pelo PC foram totalmente executadas.
3. Nenhuma instrução posterior à apontada pelo PC foi executada.
4. O estado de execução da instrução apontada pelo PC é conhecido.
Uma interrupção que não atende a esses requisitos é chamada de interrupção imprecisa. Diferentes instruções próximas do contador de programa encontram-se em diferentes estágios de execução, e nos permite observar que as instruções mais antigas nem sempre estão mais adiantadas do que as mais recentes. Máquinas com interrupções imprecisas geralmente colocam uma grande quantidade de informação de estado interno em uma pilha para dar ao sistema operacional a possibilidade de calcular o que estava acontecendo.
7) Como funciona a E/S programada? Explique
o processador envia um comando de E\S para o dispositivo, o processador fica monitorando o término da operação através do registrador de estado do dispositivo, o dispositivo
...