Galeria de mapas mentais sistema operacional
Os pontos-chave do exame final sobre sistemas operacionais incluem visão geral, gerenciamento de processos, gerenciamento de processador, gerenciamento de memória, gerenciamento de arquivos, etc. Espero que ajude a todos.
Editado em 2023-12-13 23:51:20A segunda unidade do Curso Obrigatório de Biologia resumiu e organizou os pontos de conhecimento, abrangendo todos os conteúdos básicos, o que é muito conveniente para todos aprenderem. Adequado para revisão e visualização de exames para melhorar a eficiência do aprendizado. Apresse-se e colete-o para aprender juntos!
Este é um mapa mental sobre Extração e corrosão de mim. O conteúdo principal inclui: Corrosão de metais, Extração de metais e a série de reatividade.
Este é um mapa mental sobre Reatividade de metais. O conteúdo principal inclui: Reações de deslocamento de metais, A série de reatividade de metais.
A segunda unidade do Curso Obrigatório de Biologia resumiu e organizou os pontos de conhecimento, abrangendo todos os conteúdos básicos, o que é muito conveniente para todos aprenderem. Adequado para revisão e visualização de exames para melhorar a eficiência do aprendizado. Apresse-se e colete-o para aprender juntos!
Este é um mapa mental sobre Extração e corrosão de mim. O conteúdo principal inclui: Corrosão de metais, Extração de metais e a série de reatividade.
Este é um mapa mental sobre Reatividade de metais. O conteúdo principal inclui: Reações de deslocamento de metais, A série de reatividade de metais.
sistema operacional
Visão geral
conceito de sistema operacional
status do sistema operacional
O sistema operacional é a primeira camada de software que cobre o bare metal
Controle e gerencie diretamente vários recursos de hardware
Fornece um ambiente de trabalho para outros softwares e usuários
É o centro de controle e gerenciamento de todo o sistema computacional
Vários usuários de aplicativos usam software de aplicativo correspondente para concluir várias tarefas
O software aplicativo é desenvolvido por desenvolvedores de aplicativos usando ferramentas de desenvolvimento (por exemplo, ferramentas de programação em linguagem de alto nível)
Todos os softwares aplicativos e ferramentas de desenvolvimento funcionam no ambiente operacional fornecido pelo sistema operacional. Sua operação é gerenciada pelo sistema operacional, o sistema operacional aloca os recursos necessários para eles e o sistema operacional controla os dispositivos de E/S.
Funções do sistema operacional
Fornece interface homem-máquina
Interface de nível de comando (os usuários podem emitir comandos para trabalhos por meio desta interface para controlar a execução de trabalhos. Esta interface é dividida em interface de usuário online e interface de usuário offline)
interface de usuário on-line
Interface do usuário offline (fornecida para usuários de trabalhos em lote, também chamada de interface do usuário em lote)
Interface de nível de programa (composta por um conjunto de comandos de chamada de função do sistema e módulos de programa que completam esses comandos)
interface gráfica
Gerenciar recursos do computador
Gerenciamento do processador (a tarefa do processador é executar o programa, e o processo de um programa executado em um determinado objeto de dados é chamado de processo, portanto, o gerenciamento do processador também é chamado de gerenciamento de processos)
Execução sequencial de programa único: Vários programas a serem executados são executados em uma determinada ordem. Somente após a conclusão de um programa o próximo programa pode ser executado.
Execução simultânea de multiprogramas: Armazene vários programas na memória ao mesmo tempo e agende a execução cruzada de vários programas de acordo com uma determinada estratégia para formar uma situação "micro-serial, macro-paralela", de modo que processadores e dispositivos podem funcionar em paralelo
(1) Agendamento do processador (para executar vários programas simultaneamente em um sistema de processador único, o processador deve ser agendado de acordo com uma determinada estratégia, e deve ser decidido a qual processo o processador será atribuído para realizar operações de cálculo em um determinado momento. Isto está processando tarefas essenciais de gerenciamento de máquina)
(2) Controle de processo: Um processo é um processo dinâmico de execução de um programa durante sua vida, ele passa por uma série de transições de estado desde a criação até a morte (verdadeiro ou falso).
(3) Comunicação de processos (em um ambiente de multiprogramação, o sistema pode estabelecer vários processos para uma aplicação. Esses processos cooperam entre si para completar uma tarefa comum e precisam trocar informações - comunicação de processos)
(4) Sincronização de processos (em um sistema de multiprogramação, quando vários processos simultâneos estão no mesmo ambiente operacional, deve haver algum tipo de conexão, como compartilhamento de recursos entre processos e colaboração entre processos)
Gerenciamento de armazenamento (em um ambiente de multiprogramação, para armazenar vários programas na memória ao mesmo tempo, a memória deve ser gerenciada de forma razoável para garantir o bom funcionamento do programa e melhorar a utilização da memória) questões de múltipla escolha
(1) Alocação de memória
(2) Conversão de endereço
(3) Proteção de memória
(4) Expansão de memória
Gerenciamento de dispositivo
A tarefa do gerenciamento de dispositivos é aceitar solicitações de E/S dos programas do usuário e alocar dispositivos de E/S aos programas do usuário.
Faça com que a CPU e os dispositivos de E/S operem em paralelo para melhorar a utilização da CPU e dos dispositivos de E/S
Melhore a velocidade de E/S
Facilitar que programas de usuário usem dispositivos de E/S
Para completar as tarefas acima, o subsistema de gerenciamento de dispositivos do sistema operacional deve ter funções como alocação de dispositivos, gerenciamento de buffer, driver de dispositivo e independência de dispositivo.
Gerenciamento de arquivos
(1) Gerenciamento de espaço de armazenamento de arquivos
(2) Gerenciamento de diretório
(3) Operações de arquivo
(4) Controle de permissão de acesso a arquivos
O processo de desenvolvimento do sistema operacional
Quatro estágios de desenvolvimento de hardware de computador
A primeira geração: a era dos tubos (1946-1955)
Segunda Geração: A Era do Transistor (1955-1965)
Terceira Geração: Era do Circuito Integrado (1965-1980)
A quarta geração: a era dos circuitos integrados de grande escala (1980 até o presente)
Velocidade, capacidade, estabilidade e confiabilidade foram melhoradas de forma gradual e constante!
Quatro estágios típicos de desenvolvimento de sistema operacional
Operação manual (sem sistema operacional) no início dos anos 1950
Sistema de processamento em lote de canal único na década de 1950 (pode ler imagens e reconhecer)
Como mostrado à direita
Sistema de processamento em lote multicanal, início dos anos 1960 (pode ler imagens e reconhecer)
Desvantagens: Longo tempo de processamento do trabalho Falta de capacidades de interação humano-computador O processo de execução é incerto
Sistema de compartilhamento de tempo em meados da década de 1960
sistema de compartilhamento de tempo
tecnologia de interrupção
Após a CPU receber um sinal externo (sinal de interrupção), ela interrompe o trabalho atual e transfere para processar o evento externo. Após a conclusão do processamento, ela retorna ao ponto de interrupção (ponto de interrupção) do trabalho original e continua o trabalho original.
tecnologia de canal
Um processador que lida especificamente com a transferência de dados entre periféricos e memória
Recursos do sistema de compartilhamento de tempo (host de alto desempenho, vários terminais)
Multimodulação
Vários usuários online usando o mesmo computador
exclusividade
O usuário se sente exclusivo do computador
interatividade
Responda prontamente às solicitações dos usuários
Sistema em tempo real (sistema em tempo real é um sistema operacional desenvolvido para atender aos requisitos de operações em tempo real, enfatizando pontualidade e confiabilidade)
controle em tempo real
Os sistemas que requerem controle em tempo real são geralmente chamados de sistemas de controle em tempo real. As áreas de aplicação incluem controle de processos de produção e controle de armas (como sistemas de controle automático para artilharia, sistemas de piloto automático para aeronaves e sistemas de orientação de mísseis, etc.)
processamento de informações em tempo real
Normalmente, os sistemas que requerem processamento de informações em tempo real são chamados de sistemas de processamento de informações em tempo real. Os sistemas típicos de processamento de informações em tempo real incluem sistemas de reserva de aeronaves e sistemas de recuperação de informações.
Sistema operacional de microcomputador
Sistema operacional multitarefa de usuário único (Win)
Sistemas operacionais multitarefa multiusuário (UNIX e Linux)
Características dos sistemas operacionais (questões de múltipla escolha)
1. Simultaneidade
Em um sistema de processador único, a simultaneidade refere-se a "múltiplos programas executados simultaneamente no nível macro e execução alternada no nível micro"
2. Compartilhe
Os recursos em um sistema de computador são usados por múltiplas tarefas
3. Assíncrono
Microscopicamente, os processos são executados alternadamente, e a execução, suspensão e outros estados do processo são imprevisíveis e assíncronos.
4.Virtual
As entidades físicas são mapeadas em múltiplas entidades lógicas e os programas de usuário usam entidades lógicas
Sistemas operacionais populares
Sistema UNIX
estrutura
Programa principal (kernel)
Programa periférico (shell)
Sistema Linux
É um sistema operacional semelhante ao Unix, de uso gratuito e distribuição gratuita.
arquitetura do sistema operacional
A estrutura lógica do sistema operacional
Tipos de estruturas lógicas
estrutura monolítica
Construído com módulos como unidades básicas
Características
Design, codificação e depuração de módulo independente
Módulo chamando liberdade
A comunicação do módulo é feita principalmente na forma de variáveis globais
deficiência
As informações são transferidas aleatoriamente e a manutenção e atualizações são difíceis
Estrutura hierárquica (mapa silencioso)
Cada camada utiliza apenas os serviços fornecidos pela camada abaixo dela (Unix, Linux)
Todos os módulos funcionais são organizados em várias camadas de acordo com a ordem das chamadas. Existem apenas dependências unidirecionais ou chamadas unidirecionais entre camadas adjacentes.
Núcleo
Manipulador de interrupção
Vários drivers de dispositivos
Módulos que são executados com mais frequência (como gerenciadores de relógio, agendadores de processos
Módulo de comunicação de baixo nível, módulo de gerenciamento de memória, etc.)
Estrutura do microkernel (Win)
vantagem
Simplifique a manutenção do código do kernel
Construção flexível
Alta seguranca
Fácil de transplantar
Status da CPU
A estrutura de hardware mais básica que suporta o sistema operacional
CPU
Memória
interromper
relógio
Classificação dos estados da CPU
estado nuclear
Capacidade de acessar todos os recursos e executar todas as instruções
Hipervisor/Kernel do SO
gerenciamento
Entre o estado do kernel e o estado do usuário
Modo de usuário
Apenas alguns recursos podem ser acessados e outros recursos são restritos
Programa do usuário
Status da CPU Intel
Ring0 ~ Ring3 (Ring0 é o núcleo, Ring é a camada mais externa)
memória
A parte que armazena programas e dados
Classificação
De acordo com o modo de trabalho de leitura e gravação da memória (memória semicondutora)
BATER
ROM
Material por elemento de armazenamento
Memória semicondutora (frequentemente usada como memória principal)
Armazenamento magnético (fita, disco)
Armazenamento óptico (disco óptico)
pressione contato com CPU
Memória principal: troca informações diretamente com a CPU
Armazenamento auxiliar: não é possível trocar informações diretamente com a CPU
Sistema de armazenamento ideal: velocidade rápida, grande capacidade, baixo custo
Sistema de armazenamento real (lido de cima para baixo em ordem
registro
esconderijo
memória principal
armazenamento auxiliar
Mecanismo de interrupção
Os eventos que causam interrupções no sistema são chamados de fontes de interrupção.
interface de usuário do sistema operacional
🔥Processo de inicialização do sistema operacional
Processo de inicialização do Windows
PUBLICAR
Depois de ligar, o BIOS inicia o programa de autoteste do host
inicialização inicial
O BIOS lê o programa de inicialização do MBR e o carrega em um local específico da memória.
O programa de inicialização inicia o DOS7.0 e carrega o núcleo do sistema operacional
WINDOWS começa a assumir o controle do sistema
Inicialização principal
Inicialização do status do recurso, dados principais, etc.
inicialização do sistema
A interface GUI é gerada e o sistema fica no estado de espera/aceitação de mensagens.
Classificação de interfaces de usuário
Interface de operação
interface gráfica
interface de comando
Comandos/programas em lote
concha
chamada de sistema
Gerenciamento de processos
Introdução do processo
Execução sequencial de programas
O processo de execução de um programa é um cálculo
Características de execução do programa em sequência
sequencialidade
fechamento
Reprodutibilidade
Execução simultânea de programas e suas características
O conceito de execução simultânea
Vários programas ocorrem simultaneamente no mesmo intervalo de tempo
Características de execução simultânea de programas
descontinuidade
perder o fechamento
irreprodutibilidade
Definição e características do processo
Um processo é uma execução de um programa
Um processo é um cálculo que pode ser executado simultaneamente com outros processos
Um processo é o processo de execução de um programa em um processador sob um determinado espaço de atividades e condições iniciais.
Um processo é o processo em execução de um programa em um conjunto de dados e é uma unidade independente para alocação de recursos e agendamento no sistema.
Os processos são atividades dinâmicas do ciclo de vida. O kernel pode criar um processo que eventualmente morrerá ao ser eliminado pelo kernel
Estados básicos e transições de processos
🔥Três estados básicos do processo
estado pronto
Status de execução
estado de bloqueio
Bloco de controle de processo PCB
Sincronização de processos e exclusão mútua
O conceito de recursos críticos
Recursos que não podem ser usados por dois ou mais processos ao mesmo tempo são chamados de recursos críticos (CR). Os recursos críticos podem ser alguns dispositivos exclusivos, como impressoras, unidades de fita, etc.; também podem ser algumas variáveis compartilhadas, tabelas, listas vinculadas, etc.;
conceito de processo
status do processo
estado pronto
Status operacional
estado de bloqueio
Algoritmo de agendamento de processos
Algoritmo de ordem de chegada
algoritmo de prioridade de trabalho curto
algoritmo de rotação de intervalo de tempo
fio
O conceito de fio
Thread é a menor unidade para realizar operações em um processo, ou seja, a unidade básica para executar o escalonamento do processador.
Comparação de processos e threads
Processo é a unidade básica de alocação de recursos
Thread é a unidade básica para alocação de processadores e não tem nada a ver com alocação de recursos.
Um thread só pode pertencer a um processo e um processo pode ter vários threads, mas deve haver pelo menos um thread
Status do tópico
estado pronto
Status operacional
estado de bloqueio
Algoritmo de agendamento de threads
algoritmo de agendamento de prioridade
algoritmo de rotação de intervalo de tempo
Gerenciamento de processador
Gerenciamento de trabalho
O conceito e classificação do dever de casa
Conceito de lição de casa
Consiste em programas, dados e instruções de trabalho
Classificação de atribuições
De acordo com o método de processamento
Empregos off-line
trabalho on-line
Trabalhos on-line (trabalhos interativos/trabalhos de terminal)
Os usuários interagem diretamente com os sistemas de computador
Os usuários controlam a operação dos trabalhos através de comandos operacionais no terminal ou teclado do console, ou através de interfaces gráficas de janela.
Usado principalmente em sistemas de compartilhamento de tempo
Status de trabalho
Enviar status
status de backup
Status de execução
condição finalizada
agendamento hierárquico
agendamento de processos
Método de preempção
modo não preemptivo
agendamento de trabalho
O sistema Linux não possui o conceito de agendamento de jobs
agendamento de processos
Função de agendamento de processos
Registre a execução de todos os processos do sistema
Selecione um processo na fila de status pronto
Execute a troca de contexto do processo
Algoritmo de Agendamento
Algoritmo de agendamento por ordem de chegada (FCFS)
Bom para trabalhos ou processos longos e ruim para trabalhos ou processos curtos
Tempo de resposta = tempo de espera, tempo de execução
Com tempo de resposta completo = 1 (tempo de espera/tempo de execução)
Algoritmo de agendamento de prioridade de trabalho curto (processo) (SJF ou SPF)
Adequado para agendamento de trabalhos e agendamento de processos
Não é bom para trabalhos longos
Este algoritmo não considera a urgência do trabalho, pelo que não pode garantir o processamento atempado de trabalhos urgentes.
Como a duração de um trabalho ou processo é estimada apenas pelo usuário, e o usuário pode encurtar intencionalmente ou não o tempo de execução estimado do trabalho, não é necessariamente garantido que o agendamento de prioridade real de trabalhos curtos seja alcançado, portanto, este algoritmo de agendamento é frequentemente usado como outros algoritmos de comparação de escalonamento.
Algoritmo de agendamento de prioridade de alta taxa de resposta (HRN)
Este algoritmo é frequentemente usado para agendamento de tarefas
Taxa de resposta R=1 (tempo de espera/tempo de atendimento necessário) Quanto maior o R, maior a prioridade.
Algoritmo de agendamento de prioridade (HPF)
prioridade
prioridade estática
prioridade dinâmica
Tipos de algoritmos de escalonamento de prioridade
Algoritmo de agendamento de prioridade preemptiva
Algoritmo de agendamento de prioridade não preemptivo
Quanto menor o número de prioridade, maior será a prioridade.
Método de rotação de intervalo de tempo (algoritmo RR)
Algoritmo de agendamento de fila multinível (MLQ)
(Conceito de equipamento)
Classificação de equipamentos
dispositivo de entrada
dispositivo de saída
dispositivo de armazenamento
Como gerenciar equipamentos
driver do dispositivo
controlador de dispositivo
(driver do dispositivo)
Conceito de driver de dispositivo
Funcionalidade do driver de dispositivo
Inicialização do dispositivo
controle de equipamentos
Tratamento de interrupção de dispositivo
Tipo de driver de dispositivo
driver de dispositivo de personagem
bloquear driver de dispositivo
Driver de dispositivo de rede
Gerenciamento de memória
Visão geral do gerenciamento de memória
Vários conceitos básicos de gerenciamento de armazenamento
O endereço de um operando no espaço lógico é chamado endereço lógico
O endereço no qual um operando é carregado na memória é chamado de endereço físico.
Método de gerenciamento de armazenamento de partição
Tipo de gerenciamento de partição
partição única
partição fixa
partição variável
partição relocável
Alocação contínua de programas únicos
Memória
Área do sistema
área do usuário
Método de alocação de partição fixa (julgamento)
fragmentos internos
Depois que uma região é alocada para um trabalho, o espaço restante não pode ser usado novamente.
detritos externos
Quando um trabalho carrega memória, se o comprimento da partição na memória for menor que o comprimento do programa de trabalho, o programa não poderá ser carregado.
Tanto a fragmentação interna quanto a fragmentação externa causam desperdício de espaço de armazenamento
Alocação de partição dinâmica
algoritmo de primeiro ajuste
da frente para trás
algoritmo adaptativo loop-first
Da frente para trás, conectado da frente para trás
melhor algoritmo adaptativo
Classifique do pequeno para o grande
pior algoritmo de fitness
Classifique do grande para o pequeno
Gerenciamento de armazenamento de páginas
A ideia de gerenciamento de armazenamento de páginas
No gerenciamento de armazenamento paginado, a memória principal é dividida em vários blocos físicos de tamanhos iguais.
O espaço de endereço do programa é dividido em páginas lógicas
As páginas lógicas têm o mesmo tamanho dos blocos físicos
Normalmente o tamanho do bloco físico é de 2n setores, como 1K, 2K, 4K, etc.
Estrutura de dados de gerenciamento de armazenamento de páginas
A questão fornece o tamanho da página L e o endereço A do espaço de endereço lógico. Calcule o número da página P e o endereço da página W.
O tamanho da página do sistema é 1 KB, assumindo A = 2170 B, então a partir da fórmula acima podemos encontrar P = 2, w = 122B
P =(int) [A/L] W=A%L
Relógio rápido
Se a tabela de páginas estiver inteiramente colocada na memória principal, a busca de um dado (ou uma instrução) requer pelo menos dois acessos à memória.
(Conceito de memória)
Classificação de memória
memória física
Memória virtual
Estratégia de alocação de memória
Estratégia de alocação de partição fixa
Estratégia de alocação de partição dinâmica
Estratégia de alocação de memória de página
(proteção de memória)
O conceito de proteção de memória
Métodos de proteção de memória
Proteção de espaço de endereço
proteção de controle de acesso
Gerenciamento de arquivos
Visão geral do gerenciamento de arquivos
Arquivo (grande): É uma coleção de registros relacionados. Geralmente é armazenado na memória externa e pode ser armazenado como uma unidade independente e realizar as operações correspondentes.
Um arquivo contém atributos como tipo de arquivo, comprimento do arquivo, localização física do arquivo, hora de criação do arquivo, permissões de uso (leitura e gravação), etc.
Os nomes dos arquivos geralmente consistem em caracteres ASCll ou caracteres chineses
Registro (meio): É uma coleção de itens de dados relacionados, usados para descrever os atributos de um objeto em determinados aspectos. Por exemplo, um registro de aluno contém o número do aluno, nome, sexo, idade, turma, etc.
Item de dados (pequeno): É um conjunto de caracteres que descreve um determinado atributo de um objeto. É a menor unidade lógica de dados que pode ser nomeada em uma organização de dados, ou seja, dados atômicos, também chamados de elemento ou campo de dados.
Sistema de arquivo
Conceito de sistema de arquivos
Funções do sistema de arquivos
Gerenciamento de arquivos e diretórios, como abertura, fechamento, leitura, escrita, etc.
Fornece serviços relacionados ao próprio arquivo, como mecanismo de compartilhamento de arquivos, segurança de arquivos, etc.
O gerenciamento do espaço de armazenamento de arquivos, como alocação e liberação, concentra-se principalmente na memória externa regravável, como discos.
Fornece interface de usuário
(tipo de sistema de arquivos)
Sistema de arquivos FAT
Sistema de arquivos NTFS
Sistema de arquivos EXT
Classificação de arquivos
Classificação por formato de dados de arquivo
Arquivo fonte
Arquivo de destino
arquivo executável
Sufixo do arquivo Win .exe
Linux está bem
Classificado por uso
Arquivos do sistema
Arquivo de biblioteca
arquivos de usuário
Classificar por direitos de acesso
arquivo somente leitura
Ler e gravar arquivos
arquivo executável
Classificar por tempo de armazenamento
Arquivos temporários
Arquivos
arquivo permanente
Classificação por meio de gerenciamento de arquivos
Documento comum
arquivo de catálogo
documento especial
Método de acesso a arquivos
método de acesso sequencial
Acesse arquivos sequencialmente de acordo com seus endereços lógicos
Para arquivos de registros, eles são acessados sequencialmente de acordo com a ordem de classificação dos registros.
Arquivos sequenciais são arquivos armazenados sequencialmente. A ordem dos registros físicos e a ordem dos registros lógicos são consistentes.
método de acesso aleatório
Também conhecido como método de acesso direto
Ele acessa qualquer registro do arquivo de acordo com o número ou endereço do registro.
Para acesso aleatório a arquivos de registro de comprimento fixo, um arquivo é considerado como um número de blocos ou registros numerados, e o tamanho de cada bloco é o mesmo.
O acesso aleatório permite que os blocos sejam lidos e gravados à vontade. Portanto, não existe uma sequência definida para acesso aleatório aos arquivos. Quando uma solicitação de acesso é recebida, o endereço lógico do registro é calculado e então o registro é acessado.
Para arquivos de registro de comprimento variável, é muito inconveniente determinar o deslocamento de leitura e gravação calculando o comprimento desde o início até o registro especificado. A organização da tabela de índice geralmente é usada.
Método de acesso chave
Acesso baseado em um determinado valor de item de dados (chamado de chave) no registro lógico como um índice
O método de acesso à chave é essencialmente um método de acesso aleatório
A estrutura lógica do arquivo
arquivo de log
Classificar por duração do registro
Um arquivo de registro de comprimento fixo significa que todos os registros no arquivo têm o mesmo comprimento.
Um arquivo de registro de comprimento indefinido significa que vários registros no arquivo têm comprimentos diferentes, como nome, endereço residencial, notas, etc., que podem ser mais longos ou mais curtos.
arquivo de índice
Quando os registros têm comprimento variável, geralmente é criada uma tabela de índice para eles
Defina uma entrada de tabela para cada registro para acelerar a recuperação de registros
(Dispositivo de armazenamento de arquivos)
disco rígido
CD
Disco U