O quê?Ficheiros S?
5 answers
.S
os arquivos são Arquivos de código fonte escritos em conjunto. A montagem é uma forma extremamente baixa de programação. Os arquivos contêm instruções de montagem para o processador em ordem sequencial e são normalmente compilados com base em uma arquitetura selecionada. Exemplos de tais arquivos são frequentemente vistos no kernel linux para arquiteturas específicas, como x86, sparc, ARM, etc.
Para mais informações sobre a linguagem de montagem:
- x86 conjunto / gás sintaxe
- lista de instruções x86
- Tldp Linux Assembly Howto
- exemplo no kernel Linux: arch / x86/net / bpf_ JIT.
*.Os ficheiros S são ficheiros de montagem.
Porquê ?Por que não?ficheiros c?
It because machine dependent stuff/early initialization like setting up cache & memory can only be done assembly level instruction such as I/O.
O kernel não tem o luxo de biblioteca libc para cuidar da configuração inicial de vários recursos. E recursos de hardware em qualquer ponto, mesmo durante a execução da aplicação, por sua vez chamadas de Sistema de chamada que chamam I / O rotinas codificadas em linguagem de montagem.
Eles são o código de montagem ficheiros:
Uma linguagem de montagem é uma linguagem de programação de baixo nível para computadores, microprocessadores, microcontroladores e outros programáveis dispositivos em que cada instrução corresponde a uma única máquina lingua. Uma linguagem de montagem é específica para um certo arquitectura informática, em contraste com a programação de alto nível línguas, que podem ser mais portáteis.
E assim estes arquivos não são o o mesmo que Ficheiros de código C.
Note que os ficheiros C podem ser alinhados com as instruções de montagem.
A extensão .S
indica um ficheiroem linguagem de montagem .
Porque não podemos .Ficheiros C em vez disso?
Porque o código - fonte bruto-seja ele humano-introduzido ou gerado por compilador-é Montagem, Não C.