Sistemas Operacionais Modernos - Conceitos Básicos Flashcards

1
Q

Quais são as duas principais funções de um sistema operacional?

A

Gerenciamento de recursos (CPU, memória, dispositivos E/S, etc.) e Interface entre usuário e hardware.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

O que é multiprogramação?

A

A multiprogramação é uma técnica que maximiza a utilização da CPU e outros recursos do sistema, permitindo que múltiplos processos sejam executados de forma eficiente e simultânea.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Quais são os quatro principais sistemas operacionais utilizados em servidores?

A

Linux, Windows Server, Unix, FreeBSD

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Para usar a memória cache, a memória principal é dividida em linhas de cache, em geral com 32 a 64 bytes de comprimento. Uma linha inteira é armazenada em cache de uma só vez. Qual a vantagem de armazenar uma linha inteira em vez de um único byte ou palavra de cada vez?

A

Armazenar uma linha inteira em vez de um único byte ou palavra aproveita a localidade espacial dos dados, reduzindo a latência e melhorando a eficiência do cache.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

O que é “spooling”?

A

Spooling, que vem de “Simultaneous Peripheral Operations On-Line”, é uma técnica usada para gerenciar a impressão e outras operações de entrada e saída. O spooling permite que vários trabalhos sejam armazenados em uma fila e processados sequencialmente.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Nos primeiros computadores cada byte de dados lido ou escrito era gerenciado pela CPU. Quais implicações isso tem para a multiprogramação?

A

Resultava em baixo desempenho e alta ociosidade, pois a CPU ficava sobrecarregada com operações de I/O e não podia realizar múltiplos processos simultaneamente.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

O que são chamadas de sistemas?

A

Chamadas de sistema são interfaces fornecidas pelo sistema operacional que permitem que programas de usuário solicitem serviços diretamente do kernel, como gerenciamento de arquivos, processos e comunicação.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

O que é o POSIX?

A

POSIX (Portable Operating System Interface) é um conjunto de padrões definidos pela IEEE para garantir a compatibilidade entre diferentes sistemas operacionais baseados em Unix. Ele especifica interfaces de programação, comandos e utilitários comuns para melhorar a portabilidade de aplicações.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Sobre as chamadas para gerenciamento de processos, qual a função da chamada FORK?

A

Criar um novo processo filho duplicando o processo atual, com ambos os processos continuando a execução a partir do ponto onde o fork foi chamado.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Sobre as chamadas para gerenciamento de processos, qual a função da chamada WAITPID?

A

Fazer com que o processo pai espere pela finalização de um processo filho específico, permitindo o gerenciamento adequado dos recursos do filho.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Sobre as chamadas para gerenciamento de processos, qual a função das chamadas EXEC?

A

Substituir o programa que está rodando no processo atual por um novo programa, executando-o a partir do início.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Sobre as chamadas para gerenciamento de processos, qual a função da chamada EXIT?

A

Terminar a execução de um processo, liberando os recursos alocados e retornando um código de status para o processo pai.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Quais são as 6 principais instruções POSIX para manipulação de arquivos individuais?

A

OPEN (abrir arquivo),
CLOSE (fechar arquivo),
READ (ler arquivo),
WRITE (escrever no arquivo),
LSEEK (alterar posição no arquivo),
STAT (informações sobre arquivo)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Quais são as 6 principais instruções POSIX para manipulação de diretórios e arquivos?

A

MKDIR (criar diretório),
RMDIR (remover diretório),
LINK (Criar referência para arquivo)
UNLINK (remover referência para arquivo),
MOUNT (Montar unidade no sistema),
UNMOUNT (Desmontar unidade no sistema)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Por que os sistemas UNIX de 32 bits terão problemas em 2106?

A

Os sistemas UNIX de 32 bits enfrentarão problemas em 2106 porque o tempo é representado como o número de segundos desde 1970 usando um valor de 32 bits, que eventualmente transbordará. Isso fará com que as datas sejam interpretadas incorretamente, causando possíveis falhas nos sistemas.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

O que é a WinAPI?

A

A WinAPI, ou Windows API, é um conjunto de interfaces de programação (APIs) fornecidas pelo sistema operacional Windows para permitir que desenvolvedores de software criem aplicativos que interajam com o sistema operacional.

17
Q

Existe uma hierarquia estrita entre processos pai e filho no sistema operacional Windows?

A

Não, no Windows, processos pai e filho operam de forma independente, sem uma hierarquia estrita entre eles.

18
Q

O que é um sistema monolítico?

A

Um sistema monolítico é uma arquitetura de software onde todos os componentes estão integrados em uma única aplicação. Isso torna o sistema difícil de escalar e manter, especialmente à medida que cresce.

19
Q

O que são sistemas em camadas?

A

Sistemas em camadas são uma arquitetura de software onde diferentes funcionalidades, como a interface do usuário, lógica de negócio e acesso a dados, são separadas em camadas distintas, facilitando a manutenção e a escalabilidade.

20
Q

O que caracteriza um sistema com micronúcleo?

A

Um sistema com micronúcleo é uma arquitetura onde o núcleo do sistema é minimizado para fornecer apenas as funções essenciais, enquanto outras funcionalidades são implementadas como módulos externos, aumentando a modularidade e facilitando a manutenção.

21
Q

O que é um sistema com modelo cliente-servidor?

A

Um sistema com modelo cliente-servidor é uma arquitetura onde o cliente faz requisições para o servidor, que processa essas requisições e envia respostas de volta.

22
Q

O que são máquinas virtuais e para que são usadas?

A

Máquinas virtuais são ambientes de computação simulados que permitem rodar múltiplos sistemas operacionais em um único hardware, facilitando testes e isolamento de aplicações.

23
Q

O que são containers e qual é a sua principal vantagem?

A

Containers são ambientes leves que isolam aplicações e suas dependências, permitindo que elas rodem consistentemente em qualquer sistema, com menos sobrecarga do que máquinas virtuais.

24
Q

Em máquinas virtuais, quais as diferenças entre um Hipervisor Tipo 1 e um Hipervisor Tipo 2?

A

Um hipervisor de Tipo 1, conhecido como “bare-metal,” roda diretamente sobre o hardware físico e gerencia as máquinas virtuais, oferecendo melhor desempenho e eficiência. Um hipervisor de Tipo 2, ou “hosted,” roda sobre um sistema operacional já existente, tornando-o mais fácil de usar, mas menos eficiente em termos de desempenho.

25
Q

Por que geralmente é utilizada a linguagem C para desenvolvimento de sistemas operacionais?

A

Devido à sua eficiência, controle de baixo nível sobre o hardware (ponteiros e controle total de memória) e portabilidade, permitindo que o código seja executado em diferentes plataformas com poucas alterações.