Prévia do material em texto
Gigantescas chances de cair 1) Sistemas de I/O: a) Explique suscintamente como ocorre o processo de DMA. (0,5) b) Há algum problema em se fazer transferências de grandes blocos de dados ininterruptamente? Justificar a resposta. (0,5) R) a) DMA retira o processador central do papel de controlador das transferências de dados, principalmente entre periféricos e memória. Em algumas arquiteturas isto reverte apenas em operações de transferências de dados mais rápidas. Em algumas arquiteturas a CPU pode realizar outras tarefas em paralelo. R) b) Caso a CPU seja “suspensa”, ela não pode realizar tarefas rápidas de resposta a periféricos e mesmo a requisições do usuário. Adota-se então a estratégia de subdivisão de grandes blocos de dados em blocos menores. Gigantescas chances de cair 2) Sistemas de tempo real: a) Um sistema “real-time” é lento ou rápido, justifique. (0,5) b) Diferencie “soft real-time” de “hard real-time”. (0,5) Grandes chances de cair 3) Quando um endereço lógico é referenciado e leva a um frame não presente na memória, é necessário que a página não presente seja trazida do disco. Este processo é realizado por um “exception handler”. O processo de tratamento desta exception e de uma interrupção de HW são semelhantes. Explique, em ambos os casos, como é determinado o endereço de retorno da exceção e da interrupção. (1,0) Grandes chances de cair 4) Quando múltiplas interrupções de diferentes dispositivos ocorrem ao mesmo tempo, um esquema de prioridades deve ser utilizado para determinar a ordem na qual as interrupções devem ser atendidas. Discuta quais aspectos devem ser considerados na atribuição destas prioridades. (1,0) Gigantescas chances de cair 4) A alocação contígua de arquivos leva a uma fragmentação do disco, conforme mencionado no texto, pois algum espaço no último bloco do disco será desperdiçado nos arquivos cujo tamanho não corresponda a um número integral de blocos. Essa fragmentação é interna ou externa? Explique. (1,0) R) a fragmentação é externa, pois o espaço alocado é exatamente igual à somatória das alocações individuais de cada arquivo. O espaço entre os blocos alocados, menor que o mínimo necessário para alocação de um novo arquivo é denominado de fragmento. Médias chances de cair 5) Considerando a implementação de um sistema de arquivos utilizando a alocação por lista encadeada, por que o acesso aleatório é extremamente lento? Explique. (0,5) De que forma a FAT (tabela na memória) acelera esta leitura? (0,5) R) a) A alocação encadeada pressupõe que para acessar-se um bloco qualquer, toda a cadeia anterior a ele deve ser percorrida, através da lista encadeada que está ao final de cada bloco. b) A FAT usa ponteiros para identificar os blocos que formam um arquivo. Ela somente apresentaria ganhos em relação ao armazenamento contíguo. Apresenta porém, o ganho da tabela estar na memória. Pequenas chances de cair 9) O que é “copy-on-write” e sob que circunstâncias é benéfico o uso desta caracterestica. Qual é o suporte de HW requerido para a implementação desta característica? R) COW permite que diferentes processos compartilhem a mesma área de memória física. Quando um novo processo é criado, á avaliado se ele pode compartilhar o mapeamento lógico-físico de um outro processo. Caso o novo processo realize apenas leituras, tal mapeamento é mantido. Caso o novo processo faça uma escrita, uma cópia da área do processo original é feita e um novo mapeamento lógico-físico é efetuado. Médias chances de cair 10) Considere um sistema operando em paginação sob demanda com os seguintes dados medidos: Utilização da CPU 20%; Paginando o disco 97.7%; Outros dispositivos de I/O 5% Para cada uma das opções seguintes, diga se ela irá melhorar a utilização da CPU. Explique suas respostas. a) Instalar uma CPU mais rápida; b) Instalar um disco pagi- nado maior. c) Aumentar o grau de multiprogramação d) Diminuir o grau de multipro- gramação; e) Instalar mais memória; f) Instalar um hard disk mais rápido. g) Adicionar “prepaging” ao algoritmo de busca de páginas. h) Incrementar o tamanho da página R) a) Não deve melhorar, pois aparentemente o problema é de sobrecarga de I/O. b) Também não deve melhorar, já que a quantidade de memória deve ser o gargalo. c) Irá piorar a situação, pois a CPU está com baixa ocupação e o problema deve ser de “trashing”. d) Pode ser o início da solução, pelo mesmo motivo do item c. e) Deve ser a melhor solução, para que a paginação diminua f) Pode melhorar a situação, pois a paginação será feita de forma mais rápida g) Não deve ser efetivo, pois aparentemente, em regime, a quantidade de memória e portanto de páginas é insuficiente h) Semelhantemente ao item g. o problema deve ser de dimensionamento da quantidade de memória Pequenas chances de cair 6) Considere a existência de um “bus” de dados e de endereços de 32 bits e os sinais: IOWR, IORD, MEMWR e MEMRD. Esquematize um diagrama que mostre o HW necessário para: a) interface de saída de 16 bits (LATCH) no endereço 0x1000, mapeada em memória. (0,4) b) interface de entrada com buffer tristate, I/O direto, endereço 0x3FF. (0,4) R) a) Entradas do latch ligadas ao barramento de dados EN do latch = MEMWR.A31\.A30\.A29\.A28\.A27\.A26\.A25\.A24\.A23\.A22\.A21\.A20\. A19\.A18\.A17\.A16\.A15\.A14\.A13\.A12.A11\.A10\.A9\.A8\.A7\.A6\.A5\.A4\.A3\.A2\.A1\.A0\ b) Saídas do buffer tri-state ligadas ao barramento de dados EN do buffer = IORD.A11.A10.A9.A8.A7.A6.A5.A4.A3.A2.A1.A0 Pequenas chances de cair 7) Já foi discutida a proibição de execução de certas instruções no modo usuário, entre elas I/O. Entretanto, acesso a posições de memória são permitidas aos programas rodando em modo usuário. Como implementar a proibição do acesso a I/O se estivermos usando I/O mapeado em memória. (1,0) R) Algumas áreas da memória só poderão ser acessadas em modo kernel. Diferentemente do I/O direto, onde está restrição era efetivada por HW, neste caso deve haver programação explícita das áreas de memória utilizada para mapear o I/O de forma a proibir tal acesso. Gigantescas chances de cair 5) O início de um mapa de bits do espaço livre parece-se com isto depois que a partição de disco é formatada pela primeira vez: 1000 0000 0000 0000 (o primeiro bloco é utilizado pelo diretório-raiz). O sistema sempre busca por blocos livres a partir do bloco com menor número; assim, depois de escrever um arquivo A, que usa seis blocos, o mapa de bits se parece com isto: 1111 1110 0000 0000. Mostre o mapa de bits depois de cada uma das seguintes ações adicionais: a) O arquivo B é escrito, usando cinco blocos. (0,3) b) O arquivo A é removido. (0,3) c) O arquivo C é escrito, usando oito blocos. (0,3) d) O arquivo B é removido. (0,3) R) a) parte-se de 1111 1110 0000 0000 (arquivo A alocado) B é alocado DAAA AAAB BBBB 0000 b) A é removido D000 000B BBBB 0000 c) C é alocado DCCC CCCB BBBB CC00 d) B é removido DCCC CCC0 0000 CC00 Gigantescas chances de cair 7) Identifique se escalonamento “hard” ou “soft” real time é necessário para os seguintes casos: Justifique suas respostas. a) Termostato em uma residência para controle do aquecimento (0,3) b) Sistema de controle para uma usina nuclear. (0,3) c) Alimentação de combustível em um automóvel. (0,3) d) Sistema de pouso de uma avião comercial. (0,3) Grandes chances de cair 8) Seria (a)possível e/ou (b)viável implementar as conversões de endereços realizadas pela MMU em software, ao invés de usar um hardware dedicado? Por que? (0,5 + 0,5) Grandes chances de cair 9) a) É possível utilizar I/O bloqueante em um computadorque não use sistema operacional? Justifique. (0,5) b) Em sala foi citado um exemplo de leitura de teclado não bloqueante. Descreva uma maneira como esta função poderia ser chamada, e como o sistema operacional faria a interação entre o usuário e o subsistema de I/O. (0,7) Pequenas chances de cair 10) Tipicamente, ao termino de uma operação de I/O, uma única interrupção é gerada e tratada apropriadamente pelo processador. Em certos casos, porém, o código de tratamento da interrupção pode ser dividido em 2 partes: a primeira parte executa imediatamente após o término da operação de I/O, e escalona uma segunda interrupção para a Segunda parte ser executada mais tarde. Qual o propósito de se utilizar esta estratégia no projeto de tratadores de interrupção? (1,0) Bem-vindo a prova p2 do Luiz Copetti! Parabéns por ter chegado até aqui e aproveite as respostas. Boa sorte!!!