SóProvas


ID
320827
Banca
CESPE / CEBRASPE
Órgão
INMETRO
Ano
2010
Provas
Disciplina
Programação
Assuntos

Em relação ao processo de geração de código executável, assinale a opção correta.

Alternativas
Comentários
  • (d) o correto seria: ...durante a análise léxica.
  • e) CORRETA Em programas que usam funções disponíveis em bibliotecas, as referências a estas funções serão resolvidas pelo ligador. No caso de bibliotecas estáticas, o código objeto das funções é integrado ao módulo executável durante o processo de ligação.

    Na ciência da computação, biblioteca é uma coleção de subprogramas utilizados no desenvolvimento de software. Bibliotecas contém código e dados auxiliares, que provém serviços a programas independentes, o que permite o compartilhamento e a alteração de código e dados de forma modular. Alguns executáveis são tanto programas independentes quanto bibliotecas, mas a maioria das bibliotecas não são executáveis. Executáveis e bibliotecas fazem referências mútuas conhecidas como ligações, tarefa tipicamente realizada por um ligador.

    Bibliotecas compartilhadas

    Além de poderem ser carregadas estaticamente ou dinamicamente, bibliotecas também são classificadas de acordo com como são compartilhadas pelos programas. Bibliotecas dinâmicas quase sempre fornecem alguma forma de compartilhamento, permitindo que sejam utilizadas por diferentes programas ao mesmo tempo. Por definição, bibliotecas estáticas não podem ser compartilhadas pois são ligadas individualemente a cada programa.

    Bibliotecas estáticas permitem que os usuários liguem os programas sem ter que recompilar o seu código, economizando tempo de recompilação. Note que tempo de recompilação é menos importante tendo em vista a maior velocidade dos compiladores atuais, então este motivo não é tão forte quanto já foi um dia. Bibliotecas estáticas freqüentemente são úteis para desenvolvedores se eles desejam permitir que os programadores liguem à sua biblioteca, mas não querem dar o código fonte da mesma (o que é uma vantagem para o vendedor, mas obviamente não é uma vantagem para o programador que tenta usar a biblioteca).

    Fonte:
    http://www.las.ic.unicamp.br/~felipe/plh/Program-Library-HOWTO/x26.html
    http://pt.wikipedia.org/wiki/Biblioteca_%28computa%C3%A7%C3%A3o%29
  • a) Não é parte do programa, precisa do ligador, que fará referência única e exclusivamente às funções utilizadas pelo código.

    b) Código executável não; código objeto, uma vez que devemos manter a portabilidade.

    c) Carregadores são utilizados por linguagens de baixo nível também.

    d) Totalmente possível, em Java, declararmos uma variável com o nome de 7g.

    e) CORRETA