O quê?Ficheiros S?

Já vi.Arquivos S em vários projetos, como no Kernel Linux, no kernel FreeBSD, ou em alguns outros projetos. O que fazem estes ficheiros e porque não podemos ter .Ficheiros C em vez disso ?

 41
Author: Good Person, 0000-00-00

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:

 45
Author: lukecampbell, 2017-09-28 16:20:21

*.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.

 9
Author: user1457958, 2018-06-30 00:36:29

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.

 5
Author: , 2012-04-23 17:45:22

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.

 5
Author: Matt Ball, 2018-06-30 00:37:43

.Os ficheiros S são ficheiros em linguagem de montagem. São uma forma de código de máquina. Está a um nível baixo de programação. Todo o código dependente da máquina é escrito em linguagem assembly.A linguagem de montagem é diferente para diferentes processadores.

 4
Author: ,