Sistemas  
 
Rede de conhecimento computador >> Sistemas >> Unix >> Content
O que são números do sistema Unix?
Em sistemas operacionais do tipo UNIX, as chamadas do sistema são identificadas por números exclusivos. Estes são chamados de números chamadas do sistema ou às vezes apenas números do sistema . Eles são essencialmente índices em uma tabela de chamadas do sistema dentro do kernel. Quando um programa faz uma chamada de sistema (por exemplo, `Open`,` read`, `write`,` fork`), ele não usa diretamente o nome da função; Em vez disso, ele usa o número de chamada do sistema correspondente. O kernel usa esse número para procurar a função correta para executar.

Aqui está um colapso de seu significado:

* Eficiência: O uso de números é mais eficiente do que usar strings (como nomes de funções). As pesquisas de números são muito mais rápidas que as pesquisas de string.

* Abstração: Eles fornecem um nível de abstração. A interface de chamada do sistema é consistente, independentemente dos detalhes específicos da implementação de cada função de chamada do sistema.

* Portabilidade (com advertências): Embora os números de chamadas * do sistema * próprios não sejam necessariamente portáteis em diferentes sistemas do tipo UNIX (por exemplo, Linux, MacOS, BSD), os * nomes * das chamadas do sistema geralmente são (embora seu comportamento possa ter diferenças sutis). Os arquivos de cabeçalho fornecem um mapeamento entre os nomes simbólicos e os números para um sistema específico. Você geralmente usaria os nomes simbólicos do seu código, contando com o compilador e o vinculador para resolvê -los para os números corretos de chamadas do sistema.

* Segurança: O uso direto dos números de chamadas do sistema oferece menos proteção do que o uso de uma biblioteca ou API bem-vindos; O uso incorreto pode levar a falhas do sistema ou vulnerabilidades de segurança. Portanto, o uso dos nomes simbólicos é quase sempre preferido.


Como eles são usados: Um programa geralmente não usa diretamente os números de chamadas do sistema. Em vez disso, ele usa uma interface de chamada do sistema (geralmente fornecida por uma biblioteca C), que lida com a tradução do nome da função para o número. Os arquivos de cabeçalho (como `unistd.h` em c) definem constantes simbólicas para cada chamada do sistema, permitindo que os programadores escrevam código portátil usando esses nomes simbólicos. O compilador e o vinculador cuidam do mapeamento desses símbolos para os números apropriados de chamadas do sistema durante a compilação e a ligação.


Em resumo, os números de chamadas do sistema são identificadores de baixo nível usados ​​pelo kernel para despachar chamadas do sistema, oferecendo eficiência e uma camada de abstração para programadores que, de outra forma, precisariam trabalhar diretamente com interfaces de kernel, uma tarefa geralmente deixada para escritores de bibliotecas e o próprio sistema operacional.

Anterior :

Próximo :
  Os artigos relacionados
·O que é um console Unix? 
·Qual arquivo é usado para informar a um sistema Linux …
·Tutorial em UNIX Ordenar Comando 
·O que é agendador unix e como funciona? 
·O que são tubos no Linux? 
·Como remover Dir em Unix 
·Distinguir entre comandos internos e exunais com exempl…
·O que é token na programação de computadores? 
·O que vem depois do byte? 
·O que está armazenado em um arquivo executável? 
  Artigos em destaque
·Como conectar um Mac a um PC 
·O imovies está incluído no mac x os? 
·Como desativar a Assistência Remota Usando a Diretiva …
·Skylight Instruções de instalação 
·Como instalar o Windows Service 2003 
·Como desligar ou ligar o som do teclado no Android 
·DX9 InitScreen Não é possível criar um dispositivo D…
·Como proteger Virtual OS Memória X 
·Como obter Acentos europeus em um teclado Mac 
·Como excluir segmentos de arquivo corrompido no Windows…
Cop e direita © Rede de conhecimento computador https://ptcomputador.com Todos os Direitos Reservados