Agendamento e impasse do processador ----- Sistema operacional do computador

1. Perguntas de resposta curta

1. Quais são as principais tarefas do agendamento de alto nível e do agendamento de baixo nível? Por que introduzir a programação intermediária

A principal tarefa do agendamento avançado: é usado para decidir quais tarefas da fila de backup na memória externa são transferidas para a memória, alocar os recursos necessários para seus processos de criação e, em seguida, inserir os processos recém-criados na fila de prontos para execução.

A principal tarefa do escalonamento de baixo nível: é usado para decidir qual processo da fila de prontos deve receber o processador, e então o despachante executa a operação específica de alocar o processador ao processo.

O principal objetivo da introdução do agendamento intermediário é melhorar a utilização dos recursos do sistema e o rendimento do sistema.

2. O que são trabalhos de casa e JCB?

Um trabalho é um conjunto de programas, dados e instruções de trabalho e é a unidade básica do agendamento avançado.
JCB é um bloco de controle de jobs, que representa a existência de um job e contém todas as informações necessárias para gerenciamento e escalonamento.

tips:(对作业的控制是JCB和作业说明书一起的) 
	  
3.在什么情况下需要使用JCB?JCB通常包含了哪些内容?  
(1)作业进入系统。 
(2)包含系统对作业调度,管理的全部信息。

4. Como determinar quantos trabalhos e quais trabalhos aceitar no agendamento de trabalhos?

Decidir quantos trabalhos aceitar com base na escala do sistema, na velocidade de execução, no tamanho do trabalho e se é possível obter um bom desempenho do sistema
Decidir quais trabalhos aceitar com base no algoritmo de agendamento< /span>

  1. Tente explicar as principais funções do escalonamento de baixo nível?

O agendamento de baixo nível, também conhecido como agendamento de processos, é usado para determinar qual processo na fila de prontidão recebe o processador primeiro, aloca o processador ao processo selecionado e depois o coloca em execução.

6. Descreva resumidamente os motivos do escalonamento de processos? [Perguntas do vestibular de pós-graduação]

1. O processo em execução foi concluído ou não pode continuar a execução devido a um evento; [Execução concluída] [Bloqueado]
2. O processo em execução gerou I Execução é suspenso devido à solicitação /O; [Bloqueado]
3. Certas operações primitivas, como operações P, bloqueio e suspensão de primitivas, são executadas durante a comunicação ou sincronização do processo; [Bloqueado] 】 5. No método de rotação de intervalo de tempo, o tempo a fatia terminou; [A fatia de tempo terminou]
4. No escalonamento preemptivo, um processo com prioridade mais alta que o processo atual entra na fila de prontos; [preemptado]

7. Quais princípios devem ser seguidos no algoritmo de escalonamento preemptivo?

①Princípio do intervalo de tempo. Cada processo é executado de acordo com um intervalo de tempo atribuído pelo sistema. Quando o intervalo de tempo se esgota ou o processo é bloqueado porque está aguardando a ocorrência de um evento, o sistema interrompe a execução do processo e o reprograma. O princípio do intervalo de tempo aplica-se a sistemas de compartilhamento de tempo e à maioria dos sistemas de processamento de informações em tempo real.
②Princípio de prioridade. Cada processo recebe uma prioridade de agendamento. Quando um novo processo urgente chega, ou um processo com alta prioridade muda do estado de bloqueio para o estado pronto, se a prioridade do processo for maior que a prioridade do processo atual, o sistema operacional interrompe a execução do processo atual e aloca o processador ao processo de alta prioridade para executá-lo.
③Princípio de prioridade do processo curto. Quando o tempo de execução do processo correspondente ao trabalho recém-chegado é significativamente menor que o do processo correspondente ao trabalho atualmente em execução, o sistema priva a execução do processo atual e aloca o processador para o novo processo curto para que ele possa ser executado primeiro.
O método de agendamento preemptivo é adequado para sistemas de tempo compartilhado e para a maioria dos sistemas de tempo real.

8. Quais regras devem ser seguidas na escolha de um algoritmo de escalonamento?

Justiça, utilização de recursos, equilíbrio, fiscalização

9.O que é prioridade estática? O que é prioridade dinâmica? Qual é a base para a priorização?

(1) A prioridade estática é determinada quando o processo é criado, e a prioridade dinâmica muda com o tempo e as mudanças ambientais.
(2) Requisitos do usuário, requisitos de processo para CPU IO e outros recursos, tipo de processo.

10. Tente comparar os dois algoritmos de escalonamento: FCFS [First Come First Served] e SJF [Short Process First].

O serviço por ordem de chegada tem um longo tempo de resposta, o que não é bom para processos curtos. A interação não pode ser alcançada. Os trabalhos de emergência não podem ser processados, mas o processo não morre de fome.
Priorizar processos curtos requer conhecer primeiro o tempo de execução do trabalho, o que é prejudicial para processos longos, não leva em consideração a urgência do processo e é propenso à inanição.

11. No algoritmo de escalonamento round-robin baseado em intervalos de tempo, como o tamanho do intervalo de tempo deve ser determinado?

O tamanho de um intervalo de tempo é ligeiramente maior que o tempo necessário para uma interseção típica.

12. Por que a fila de feedback multinível é mais capaz de atender às necessidades de todos os usuários?

Algoritmo de fila de feedback multinível Cada fila pode ser configurada com diferentes algoritmos de agendamento, de modo que processos curtos sejam concluídos na primeira fila, e filas longas também sejam processadas, e não haverá problema de não serem processados ​​por muito tempo.

13. Por que um sistema em tempo real requer um sistema com fortes capacidades de processamento?

Num sistema em tempo real, se houver muitas tarefas a serem concluídas no mesmo período de tempo, o processador não terá tempo para processá-las e as tarefas não serão concluídas, resultando em consequências catastróficas.

  1. Que tipos de algoritmos de escalonamento em tempo real podem ser divididos de acordo com os métodos de escalonamento?

Preemptivo e não preemptivo.

15. Quais são os algoritmos de escalonamento comumente usados ​​em sistemas de tempo real? Apresente-os individualmente.

Prazo mais próximo: Quanto mais cedo for o prazo, maior será a prioridade. Pode ser preemptivo ou não preemptivo.
A folga mais baixa tem prioridade: o prazo menos o tempo atual, menos o tempo necessário é a folga. Quanto menor a folga, maior a prioridade. Se a folga for 0, a prioridade é a Altíssima.

16. Quais algoritmos de escalonamento de processos são usados ​​em sistemas de processamento em lote, sistemas de time-sharing e sistemas de tempo real?

Sistema de processamento em lote: primeiro a chegar, primeiro a ser atendido, processos curtos primeiro, agendamento prioritário.

dicas: Não há algoritmo round robin e fila de feedback multinível.
dicas: A alta taxa de resposta primeiro é um algoritmo de agendamento de prioridade. Sistema de time-sharing: somente rodízio. Sistemas de tempo real: Algoritmos round robin e escalonamento prioritário.

17.O que é impasse? Quais são as causas e condições necessárias para o impasse? Como evitar o impasse? [Perguntas do vestibular de pós-graduação]

(1) Deadlock ocorre quando vários processos retêm recursos necessários para outros processos, mas não conseguem obter os recursos necessários e estão em um estado de bloqueio de impasse.
(2) Inalienável, solicitação e retenção, acesso mutuamente exclusivo, espera em loop.
(3) Destrua as quatro condições de impasse.

18. Dentre os diversos métodos para resolver o problema do impasse, qual método é mais fácil de implementar? Qual método fornece a utilização de recursos mais eficiente?

A resolução de impasses pode ser resumida em quatro métodos: prevenção de impasses, prevenção de impasses, detecção de impasses e liberação de impasses.
Entre eles, prevenir impasses é o mais fácil de implementar.
Evite impasses para maximizar a utilização de recursos.

2. Questões de cálculo

19. [Questões do vestibular de pós-graduação]

19
Insira a descrição da imagem aqui

20. [Questões do vestibular de pós-graduação]

20
20
20

21. [Questões do vestibular de pós-graduação]

Insira a descrição da imagem aqui
Insira a descrição da imagem aqui

22.

Insira a descrição da imagem aqui
(1) Estado seguro
(2) Estado não seguro
(3) Estado não seguro
(4) Estado não seguro

3. Perguntas abrangentes sobre aplicação

23. [Questões do vestibular de pós-graduação]

Insira a descrição da imagem aqui
(1) Entre os três métodos dados na questão, a detecção de deadlock permite que mais processos avancem sem esperar e tem a maior simultaneidade, porque este método permite que os processos solicitem e aloquem recursos ao máximo, até ocorre um impasse, o sistema resolve o impasse.
(2) O algoritmo do banqueiro permite que os processos solicitem recursos livremente, mas quando um processo solicita recursos, ele verificará se o sistema está em um estado seguro. Nesse caso, ele pode ser alocado imediatamente; caso contrário, será rejeitado. Sua simultaneidade é secundária à detecção de deadlock.
(3) A última etapa é a pré-alocação de recursos, porque esse método exige que o processo solicite todos os recursos necessários antes de ser executado. Isso fará com que muitos processos não possam ser iniciados porque não pode solicitar todos os recursos, resultando em parcial O processo de recurso também não liberará os recursos ocupados porque não obteve todos os recursos, portanto este método levará ao desperdício de recursos. Portanto, os três métodos acima são ordenados de maior para menor em ordem de simultaneidade: detecção de impasse, algoritmo do banqueiro e pré-alocação de recursos.

24. [Questões do vestibular de pós-graduação]

Insira a descrição da imagem aqui
(1) Ocorrerá um deadlock no sistema. A razão é a seguinte: suponha que duas contas A e B tenham dois negócios de transferência, nomeadamente transferência de A para B e transferência de B para A. A seguinte situação pode ocorrer quando esses dois negócios são executados: um negócio bloqueia a conta A e não consegue bloquear a conta B e espera; o outro negócio bloqueia a conta B e não consegue bloquear a conta A e também está esperando, o que fará com que o sistema seja no status de impasse.
(2) Para evitar impasses, um método de bloqueio em dois estágios pode ser usado, ou seja, um número de conta exclusivo é definido para cada conta. Antes de o negócio ser executado, ele deve ser obtido em ordem de tamanho da conta.Para todos os bloqueios de conta, após a conclusão do negócio, as contas bloqueadas posteriormente serão desbloqueadas primeiro na ordem de bloqueio.

25. [Questões do vestibular de pós-graduação]

Insira a descrição da imagem aqui
<1>Esses dois processos podem causar impasse em diferentes velocidades de avanço. Por exemplo: o processo P1 aplica-se primeiro ao recurso R1, e depois que P1 obtém R1, o processo P1 aplica-se a R2; depois que P2 obtém R2, P2 aplica-se ao recurso R1. Neste momento, porque R1 foi alocado, P2 está bloqueado. P1 e P2, os dois processos formaram um impasse porque não puderam solicitar os recursos necessários. Se a ordem de execução dos processos for alterada, os dois processos não poderão entrar em conflito. Portanto, os motivos do impasse podem ser atribuídos a dois pontos: 1. Competição por recursos, 2. Sequência ilegal de avanço do processo. Condições necessárias para impasse: 1. Condições de exclusão mútua; 2. Condições de solicitação e retenção; 3. Condições de não preempção, 4. Condições de espera de loop

<two>Ocorrerá um deadlock
Motivo: quando p1 e p2 executam a primeira etapa, eles bloquearão um ao outro
Condições Necessárias : Exclusão mútua, solicitação e retenção, espera de loop, inelegível.

Acho que você gosta

Origin blog.csdn.net/m0_46222433/article/details/129592108
Recomendado
Clasificación