Diferença principal - chamada do sistema x chamada da biblioteca
A chamada do sistema e a chamada da biblioteca estão relacionadas ao sistema operacional de um computador. O computador pode operar em dois modos; ou seja, modo de usuário e modo kernel. A principal diferença entre a chamada do sistema e a chamada da biblioteca é que a chamada do sistema é uma função fornecida pelo kernel para entrar no modo kernel para acessar os recursos de hardware, enquanto a chamada da biblioteca é uma função fornecida pelas bibliotecas de programação. Por exemplo, open () é uma chamada de sistema e fopen () é uma chamada de biblioteca. Quando fopen () no programa C, usa a biblioteca de cabeçalho stdio.h. Então, a chamada de sistema 'open (),' é usada a partir do kernel para completar a tarefa de abertura de arquivo.
CONTEÚDO
1. Visão geral e diferença principal
2. O que é chamada do sistema
3. O que é chamada da biblioteca
4. Semelhanças entre a chamada do sistema e a chamada da biblioteca
5. Comparação lado a lado - Chamada do sistema x Chamada da biblioteca em formato tabular
6. Resumo
O que é chamada de sistema?
Um computador opera em dois modos. Eles são modo de usuário e modo kernel. Alguns processos estão sendo executados em um sistema de computador. Um processo é um programa em execução. Quando os programas de aplicativos estão em execução, o computador está no modo de usuário. Se um recurso de hardware for necessário, o processo enviará uma solicitação ao kernel e o computador entrará no modo kernel. Essas solicitações são enviadas por meio de chamadas de sistema. O computador está alternando entre esses dois modos com freqüência. Quando a tarefa é concluída, o computador volta ao modo de usuário do modo kernel. Esta transição de modo é conhecida como "troca de contexto". As chamadas do sistema são uma interface entre o sistema operacional e os programas do usuário.
Figura 01: Chamadas do sistema
Existem vários tipos de chamadas de sistema. Criar, encerrar o processo, executar o processo, alocar e liberar memória pode ser feito usando "Chamadas de sistema de controle de processo" “Chamadas do sistema de gerenciamento de arquivos” pode ser usado para criar, excluir, ler, gravar, abrir e fechar arquivos. O processo requer alguns recursos para concluir a execução. A solicitação e a liberação de dispositivos são feitas por meio de “Chamadas do sistema de gerenciamento de dispositivos”. “Chamadas de sistema de gerenciamento de informações” pode ser usado para obter dados do sistema e para obter processos e atributos de dispositivo. Os processos estão se comunicando. Essa comunicação é feita usando “Chamadas do sistema de comunicação”. O envio de informações de status, a criação e exclusão de conexões de comunicação e o envio e recebimento de mensagens podem ser feitos através de chamadas do sistema de comunicação.
O que é Library Call?
A chamada da biblioteca é uma função fornecida pelas bibliotecas de programação. Antes de fazer uma chamada de biblioteca, essa biblioteca deve ser importada. A chamada da biblioteca pode depender da chamada do sistema.
Na linguagem C, essas funções podem ser usadas no programa incluindo os arquivos de cabeçalho. Arquivos de cabeçalho são incluídos usando a diretiva de pré-processamento #include. O pré-processador varre o arquivo especificado antes de continuar com o restante do arquivo de origem. Algumas funções de biblioteca comuns são as seguintes, a biblioteca “math.h” inclui funções relacionadas a operações matemáticas. A biblioteca “stdio.h” fornece funções para realizar entrada e saída. “Fopen ()” abre o nome do arquivo apontado. “Fclose ()” fecha o arquivo. “Printf () é usado para enviar a saída formatada para uma saída padrão. “Fprintf ()” é usado para enviar a saída formatada para um fluxo. “Scanf ()” é usado para ler a entrada formatada da entrada padrão. “Stdlib.h” fornece funções para gerenciamento de memória e “time.h” fornece funções para manipulação de data e hora.
Qual é a semelhança entre a chamada do sistema e a chamada da biblioteca?
Ambos estão relacionados ao sistema operacional
Qual é a diferença entre chamada do sistema e chamada da biblioteca?
Artigo Diff meio antes da tabela
Chamada do sistema x Chamada da biblioteca |
|
Uma chamada de sistema é uma função fornecida pelo kernel para entrar no modo kernel e acessar recursos de hardware. | A chamada da biblioteca é uma função fornecida pela biblioteca de programação. |
Modo de Execução | |
Uma chamada de sistema é executada no modo kernel. | Uma chamada de biblioteca é executada no modo de usuário. |
Mudança de modo | |
Uma mudança de chamada do sistema do modo de usuário para o modo kernel. | Não há como alternar do modo de usuário para o modo kernel na chamada da Biblioteca. |
Portabilidade | |
Uma chamada do sistema não é portátil. | Uma chamada da Biblioteca é portátil. |
Resumo - Chamada do sistema x Chamada da biblioteca
Uma chamada de sistema é implementada no kernel e uma chamada de biblioteca é implementada no espaço do usuário. A diferença entre chamada de sistema e chamada de biblioteca é que uma chamada de sistema é uma função fornecida pelo kernel para entrar no modo kernel para acessar recursos de hardware e chamada de biblioteca é uma função fornecida por bibliotecas de programação. As chamadas da biblioteca podem depender das chamadas do sistema para concluir a tarefa. open (), fork (), cd () são alguns exemplos de chamadas de sistema. fopen (), fprintf () são exemplos de chamadas de biblioteca.
Baixe a versão em PDF do System Call vs Library Call
Você pode baixar a versão PDF deste artigo e usá-la para fins off-line de acordo com a nota de citação. Faça o download da versão em PDF aqui. Diferença entre chamada do sistema e chamada da biblioteca