Principais Conceitos de Sistemas Operacionais

Classificado em Computação

Escrito em em português com um tamanho de 5,76 KB

  • Alocação contígua simples: Monotarefa; memória dividida em duas partes: uma para o S.O. e outra para o programa. Há desperdício de memória.
  • Particionamento: Divisão de espaço em um HD em diversas regiões denominadas partições.
  • Código absoluto: Todos os endereços do programa referem-se a posições físicas na memória.
  • Código relocável: As referências dos endereços são relativas ao início do programa; pode ser carregada em qualquer parte da memória que esteja disponível.
  • Segmentação: Quando o programa é dividido na memória em tamanhos diferentes.
  • Paginação: Subdivisão da memória em pequenas partes (frames).
  • Swapping: Troca de processos ativos que não estão sendo processados; são carregados na memória secundária, retornando quando é necessário. Gera maior overhead.
  • Memória virtual: A parte principal do programa é mantida na memória primária, enquanto o resto do programa é mantido no HD e enviado para a memória quando solicitado.
  • Page fault: Interrupção causada quando um programa acessa uma página na memória virtual que não foi carregada na memória principal.
  • Mnemônicos: Conjunto de técnicas utilizadas para auxílio do processo de memorização.
  • S.O.: Software que atua como interface entre os programas e o hardware.
  • Programa x Processos: Programa é uma sequência lógica de instruções para solução de um problema. Processos representam o ambiente criado para a execução do programa.
  • Formatação lógica: Processo que cria o sistema de arquivos, armazenando as estruturas de dados iniciais. O S.O. organiza e otimiza o acesso ao HD.
  • Cluster: Sistema que relaciona dois ou mais computadores para trabalhar em conjunto.
  • Sistema de arquivo: Conjunto de estruturas lógicas e de rotinas que permitem que o S.O. controle o acesso ao HD. Ex: FAT16, FAT32, NTFS.
  • NTFS: Sistema de arquivos construído à base de arquivos. Contém uma tabela mestra (MFT).
  • Migração de dados: Memória 2 > Memória 1 > Cache > Registrador. Caso a informação não esteja na memória, é realizada uma interrupção.
  • Algoritmos de substituição: FIFO (primeira a entrar é a primeira a sair), LFU (páginas menos usadas são as primeiras a sair) e LRU (páginas mais antigas são as primeiras a sair).
  • Conceitos de desempenho: Thrashing (excesso de troca de páginas), Escalonar (atribuição de um recurso), Preempção (retirada daquele recurso) e Throughput (velocidade de processamento de dados em um determinado tempo).
  • Fatia de tempo: Atribuição de tempo para cada tarefa.
  • Monoprogramação/Monotarefa: Um processo por vez; os recursos do hardware ficam exclusivos para aquela tarefa.
  • Spooling: Processo de transferência de dados, colocando-os em uma área temporária (buffer), estando à disposição quando solicitado.
  • Fila circular: Cada processo tem um tempo limite para sua execução (quantum/time-slice).
  • Múltiplas filas: Diversas filas onde cada processo é associado exclusivamente a uma delas, definida pela prioridade de cada um.
  • Multiprogramação/Multitarefa: Executa vários processos, cada um com uma fatia de tempo. Compartilham do mesmo hardware. Há muito overhead.
  • Multiprocessamento: Executa vários processos simultaneamente; há mais de um processador.
  • Multithreads: Execução de várias threads (divisão de processos de um programa). Possui tolerância a falhas e contém redundância.
  • Sistemas fortemente acoplados: Um PC com vários processadores compartilhando os recursos do hardware. Aumento de throughput, sistema tolerante a falhas e maior overhead.
  • Sistemas assimétricos: Um computador com vários processadores. Contém um processador mestre que controla os escravos e distribui as demais tarefas para cada um.
  • Sistemas simétricos: Conjunto de processadores trabalhando em conjunto; compartilham da mesma memória e barramento. Oferece tolerância a falhas e melhor desempenho.
  • Sistemas fracamente acoplados: Máquinas que não compartilham do mesmo hardware, mas trabalham em conjunto.
  • Computação em grade: Rede de computadores que dividem os recursos com todo ou qualquer PC no sistema.
  • Processamento Batch: Processamento em lotes; as informações são coletadas, recebidas, armazenadas e submetidas a processamento futuro. Processos (jobs) são executados em segundo plano (background). Possui agendamento de tarefas e tempo de resposta longo (turnaround).
  • Processamento em tempo compartilhado: Diversos programas são executados a partir da divisão do tempo do processador em pequenos intervalos, denominados fatia de tempo (time-slice). O tempo de processamento pode variar.
  • Tempo real: O tempo de processamento deve estar dentro de um limite rígido, caso contrário haverá problemas. Não há fatia de tempo; um programa fica por tempo indeterminado até um processo de prioridade maior entrar.

Entradas relacionadas: