Chamada de sistema

Uma chamada de sistema é uma solicitação feita por um programa ao sistema operacional. Ela permite que um aplicativo acesse funções e comandos da API do sistema operacional.

As chamadas de sistema executam operações no nível do sistema, como a comunicação com dispositivos de hardware e a leitura e gravação de arquivos. Ao fazer chamadas de sistema, os desenvolvedores podem usar funções pré-escritas compatíveis com o sistema operacional (SO), em vez de escrevê-las do zero. Isso simplifica o desenvolvimento, melhora a estabilidade dos aplicativos e torna os aplicativos mais "portáteis" entre diferentes versões de um SO.

Como funcionam as chamadas de sistema

Os aplicativos são executados em uma área da memória chamada espaço do usuário. Uma chamada de sistema acessa o kernel do sistema operacional, que é executado no espaço do kernel. Quando um aplicativo faz uma chamada de sistema, primeiro precisa solicitar permissão ao kernel. Isso pode ser feito com uma solicitação de interrupção, que pausa o processo atual e transfere o controle para o kernel.

Se a solicitação for permitida, o kernel a processará, por exemplo, criando ou excluindo um arquivo. Quando a operação é concluída, o kernel passa a saída de volta ao aplicativo, que transfere dados do espaço do kernel para o espaço do usuário na memória. O aplicativo recebe a saída do kernel como entrada. No código-fonte de um programa, isso pode ser um valor de parâmetro ou um valor de retorno dentro de uma função. Depois que a entrada é recebida, o aplicativo retoma o processo.

Uma chamada de sistema básica, como obter a data e a hora do sistema, pode levar alguns nanossegundos. Uma chamada de sistema mais avançada, como estabelecer comunicação com um dispositivo de rede, pode exigir alguns segundos. Para evitar gargalos, a maioria dos sistemas operacionais inicia uma thread separada do kernel para cada chamada de sistema. Os sistemas operacionais modernos são multithread, o que significa que podem processar várias chamadas de sistema ao mesmo tempo.

Atualizado April 27, 2019 por Per C.

quizTeste seus conhecimentos

Which character is not supported the long filename (LFN) standard?

A
&
0%
B
:
0%
C
$
0%
D
!
0%
Correct! Incorrect!     View the LFN definition.
More Quizzes →

O dicionário de informática Tech Terms

A definição de Chamada de sistema nesta página é uma definição original escrita pelos autores do TechTerms.com. Se você quiser fazer referência a esta página ou citar esta definição, use a barra de citação verde logo abaixo da definição.

Nosso objetivo é explicar a terminologia de informática de um jeito fácil de entender. Buscamos precisão e clareza em cada definição que publicamos. Se você tiver comentários sobre esta definição ou quiser sugerir um novo termo técnico, entre em contato.

A newsletter do Tech Terms

Amplie seus conhecimentos técnicos com nossa newsletter diária ou semanal! Assine hoje e receba novos termos e quizzes na sua caixa de entrada.

Assine a newsletter gratuita do TechTerms

Com que frequência você gostaria de receber um e-mail?

Você pode cancelar a assinatura ou alterar a frequência a qualquer momento usando os links disponíveis em cada e-mail. Dúvidas? Entre em contato.

Observação: a newsletter é enviada em inglês.