Chamada do sistema no sistema operacional (OperaSistema de ting): O que é, tipos e exemplos
⚡ Resumo Inteligente
Uma chamada de sistema é a interface controlada que um processo usa para solicitar serviços do kernel, como acesso a arquivos, controle de processos e comunicação com dispositivos, alternando com segurança a CPU do modo de usuário para o modo de kernel privilegiado.

O que é chamada de sistema Operasistema?
A chamada do sistema é um mecanismo que fornece a interface entre um processo e o sistema operacional. É um método programático no qual um programa de computador solicita um serviço do kernel do sistema operacional.
A chamada do sistema oferece os serviços do sistema operacional aos programas do usuário via API (Application Programming Interface). As chamadas do sistema são os únicos pontos de entrada para o sistema kernel.
Chamadas do sistema em OperaSistema de Ting
Exemplo de chamada de sistema
Por exemplo, para escrever um programa que lê dados de um arquivo e os copia para outro, o programa primeiro precisa dos nomes dos dois arquivos: o arquivo de entrada e o arquivo de saída.
Em um sistema interativo, esse tipo de execução de programa requer algumas chamadas de sistema do SO (Sistema Operacional).
- A primeira coisa a fazer é escrever uma mensagem de incentivo na tela.
- A segunda etapa consiste em ler, a partir do teclado, os caracteres que definem os dois arquivos.
Como funciona a chamada do sistema?
Aqui estão os passos para uma chamada de sistema em um sistema operacional:
Archiarquitetura da chamada do sistema
Como você pode ver no diagrama de chamadas do sistema acima:
Passo 1) Os processos são executados em modo de usuário até que uma chamada de sistema os interrompa.
Passo 2) Depois disso, a chamada de sistema é executada no modo kernel com base na prioridade.
Passo 3) Assim que a execução da chamada de sistema terminar, o controle retorna ao modo de usuário.
Passo 4) A execução dos processos do usuário é retomada, alternando entre o modo de usuário e modo kernel como requerido.
Por que você precisa de chamadas de sistema no sistema operacional?
A seguir, apresentamos algumas situações que exigem chamadas de sistema no sistema operacional:
- Ler e gravar arquivos exige chamadas do sistema.
- Se um sistema de arquivos quiser criar ou excluir arquivos, serão necessárias chamadas de sistema.
- As chamadas de sistema são utilizadas para a criação e gerenciamento de novos processos.
- As conexões de rede precisam de chamadas de sistema para enviar e receber pacotes.
- O acesso a dispositivos de hardware, como um scanner ou uma impressora, requer uma chamada de sistema.
Tipos de chamadas de sistema
Aqui estão os cinco tipos de chamadas de sistema em um sistema operacional:
- Controlo do processo
- Gestão de Arquivos
- Device Management
- Manutenção de informações
- Comunicação
Tipos de chamadas de sistema em um sistema operacional.
Controlo do processo
Essas chamadas de sistema executam tarefas como criação de processos, encerramento de processos, etc.
Funções:
- Finalizar e Abortar
- Carregar e executar
- Criar processo e encerrar processo
- Espere e Signal Evento
- Alocar e liberar memória
Gestão de Arquivos
As chamadas do sistema de gerenciamento de arquivos lidam com tarefas de manipulação de arquivos, como criação de um arquivo, leitura e gravação, etc.
Funções:
- Crie um arquivo
- Excluir arquivo
- Abrir e fechar arquivo
- Ler, escrever e reposicionar
- Obtenha e defina atributos de arquivo
Device Management
O gerenciamento de dispositivos faz o trabalho de manipulação de dispositivos, como leitura de buffers de dispositivos, gravação em buffers de dispositivos, etc.
Funções:
- Solicitar e liberar dispositivo
- Conectar ou desconectar dispositivos de forma lógica
- Obter e definir atributos do dispositivo
Manutenção de informações
Ele lida com informações e sua transferência entre o sistema operacional e o programa do usuário.
Funções:
- Obtenha ou defina hora e data
- Obtenha atributos de processo e dispositivo
Comunicação
Esses tipos de chamadas de sistema são usados especialmente para comunicação entre processos.
Funções:
- Criar e excluir conexões de comunicação
- Enviar e receber mensagens
- Ajude o sistema operacional a transferir informações sobre o status da transferência.
- Anexe ou desconecte dispositivos remotos
Regras para passar parâmetros para chamada de sistema
Aqui estão as regras gerais para passar parâmetros para a chamada do sistema:
- Os parâmetros devem ser adicionados ou removidos da pilha pelo sistema operacional.
- Os parâmetros podem ser passados em registradores.
- Quando houver mais parâmetros do que registradores, eles devem ser armazenados em um bloco, e o endereço do bloco deve ser passado em um registrador.
Chamadas importantes do sistema usadas no sistema operacional
esperar()
Em alguns sistemas, um processo precisa esperar que outro termine. Isso ocorre quando um processo pai cria um processo filho e permanece suspenso até que o processo filho seja concluído.
A suspensão do processo pai ocorre automaticamente por meio de uma chamada de sistema wait(). Quando o processo filho encerra sua execução, o controle retorna ao processo pai.
garfo()
Os processos usam essa chamada de sistema para criar processos que são cópias de si mesmos. Com a ajuda de fork(), um processo pai cria um processo filho, e o processo pai é suspenso até que o processo filho seja executado.
exec ()
Essa chamada de sistema executa um arquivo executável dentro de um processo já em execução, substituindo o anterior. O identificador do processo original permanece, já que nenhum novo processo é criado, mas a pilha, os dados, o heap, etc., são substituídos pelo novo processo.
matar()
A chamada de sistema kill() é usada pelo sistema operacional para enviar um sinal de término a um processo, solicitando que ele seja encerrado. No entanto, uma chamada de sistema kill não significa necessariamente matar o processo e pode ter vários significados.
Saída()
A chamada de sistema exit() é usada para encerrar a execução de um programa. Especialmente em um ambiente multithread, essa chamada define que a execução da thread foi concluída. O sistema operacional recupera os recursos utilizados pelo processo após a chamada exit().




