Lar Desenvolvimento O que é rotina de seção crítica (csr)? - o que é techopedia

O que é rotina de seção crítica (csr)? - o que é techopedia

Índice:

Anonim

Definição - O que significa Critical Section Routine (CSR)?

A rotina de seção crítica (CSR) é uma seção de código para a qual um processo obtém um bloqueio exclusivo, para que nenhum outro processo possa executá-lo simultaneamente. Frequentemente, um ou mais processos são executados simultaneamente em um sistema operacional, forçando esses processos a competir entre si pelo acesso a arquivos e recursos. Somente um processo deve ter permissão para acessar o recurso enquanto parte do código relacionado ao recurso é executado.


Para garantir que um processo no CSR não falhe enquanto outros processos estão aguardando, um limite de tempo é definido pelo componente de gerenciamento de processos. Assim, um processo pode ter acesso a um bloqueio exclusivo por apenas um período limitado.

Techopedia explica a Seção Crítica de Rotina (CSR)

Os principais requisitos para implementar uma RSE são:

  • Exclusão mútua: quando um processo está sendo executado em um CSR, nenhum outro processo pode entrar.
  • Condição de progresso: se nenhum processo estiver sendo executado em um CSR e houver alguns processos que desejem inseri-lo, eles poderão fazer isso em um período definido de tempo. Um dos processos entra no CSR enquanto outros esperam.
  • Espera limitada: quando um processo solicita a entrada em um CSR e antes que a solicitação seja concedida, deve haver um limite superior no número de processos aguardando para entrar no CSR durante esse período para garantir que nenhum processo passe fome e todos os processos na fila de espera consegue entrar no CSR.

O CSR, em um determinado trecho de código, pode ser identificado pelas seguintes propriedades:

  • O código é caracterizado por uma sequência de operações de leitura, gravação e atualização.
  • Seções do código alteram variáveis ​​em outro código, que executa uma sequência de operação de leitura, gravação e atualização.
  • A presença de código que acessa uma estrutura de dados de algum outro código, modificando-o ou código que usa uma estrutura de dados que pode ser modificada por algum outro processo.

O conceito de seção crítica pode ser aplicado ao hardware que usa o recurso de interrupções. Sempre que um processo entra em uma seção crítica, todas as interrupções no processador devem ser desativadas para que outros processos não possam solicitar um bloqueio no recurso. Da mesma forma, quando um processo termina a execução, as interrupções são ativadas novamente. Outra abordagem é usar um semáforo, uma variável especial que age como um sinal para direcionar a execução ou finalização de um processo.

O que é rotina de seção crítica (csr)? - o que é techopedia