MATÉRIA: SISTEMA OPERACIONAL (S.O)
PROFESSOR: ARMANDO RIVAROLA, LICENCIADO EM
COMPUTAÇÃO
CRIAÇÃO DE PROGRAMAS
 Os programas são criados a partir de arquivos texto,
que contêm um roteiro estruturado de passos e ações a
serem executadas pelo programa que se deseja, ou
seja, estes arquivos texto são uma representação dos
algoritmos que se desejam programar.
 Estes passos e ações estão descritos dentro do arquivo
texto através de uma linguagem de programação e por
isso são usualmente chamados de arquivo fonte do
programa (resumidamente arquivo fonte ou fonte).
 As linguagens de programação utilizadas podem ser de
alto, médio ou baixo nível, mas qualquer que seja a
linguagem, seu tipo e a forma de estruturação do
programa, o arquivo fonte continua a ser simplesmente
um texto, análogo à uma redação, sujeito à regras de
sintaxe e de contexto.
 Da mesma forma que os computadores não
entendem a nossa linguagem, ou seja a linguagem
que naturalmente utilizamos para nossa
comunicação, estas máquina tão pouco entendem
as linguagens de programação diretamente.
 Existem entidades especiais responsáveis pela
transformação do arquivo fonte do programa em
uma forma passível de execução pelo computador.
 Estas entidades estão ilustradas na Figura 4.7.
Figura 4.7: Esquema de criação de programas
 O compilador (compiler) é um programa especial
que traduz o arquivo fonte em um arquivo binário
que contêm instruções, dados e endereços
(representados binariamente) que permitem
executar as ações necessárias através das
instruções em linguagem de máquina do
processador existente no computador em questão.
 Os arquivos binários produzidos pelo compilador
são os arquivos objeto ou resumidamente objeto.
Note que cada compilador é apropriado para uma
única linguagem de programação.
 O ligador (linker), quando necessário, apenas
encadeia dois ou mais arquivos objeto sob a forma
de um único arquivo de programa executável ou
arquivo executável. O arquivo executável é aquele
que pode ser transferido para a memória do
computador possibilitando a execução do
programa.
 Assim como os compiladores, o ligador também é
uma entidade deste processo de geração de
programas e também está sujeito a operar com
arquivos objeto produzidos apenas por
determinados compiladores.
 Devemos ressaltar que até agora os arquivos fonte,
objeto e executável constituem arquivos, ou seja,
estão armazenados nas estruturas de memória
secundária (unidades de disco rígido, discos
flexíveis, fitas, cartuchos ou discos ópticos).
 Existe uma outra entidade especial, chamada
carregador (loader), que é parte integrante do
sistema operacional, responsável por transportar
os arquivos de programa executável da memória
secundária para a memória principal, onde se dará
a execução do programa carregado.
 Os carregadores constituem uma parte do sistema
operacional porque a colocação de programas na
memória e a execução dos mesmos são funções
deste, responsável por controlar eficientemente as
estruturas de memória primária, de
armazenamento secundário e o processamento do
sistema computacional.
 Após o transporte do arquivo executável para a
memória principal é possível iniciar sua execução, onde
ele mesmo se transforma numa imagem executável,
que representa a expansão do código de programa
contido no arquivo executável em código executável,
áreas de memória reservadas para variáveis do
programa, pilha retorno e área extra para alocação
dinâmica por parte do programa.
 A bem da verdade, o sistema operacional, antes da
carga do módulo de código, deve conhecer de antemão
seu tamanho total e a quantidade mínima de memória
extra necessária.
 Tais informações residem geralmente num cabeçalho
(header) localizado no início do arquivo de programa
executável, que não é copiado para memória, mas
apenas lido pelo sistema operacional.

S.o aula 2728

  • 1.
    MATÉRIA: SISTEMA OPERACIONAL(S.O) PROFESSOR: ARMANDO RIVAROLA, LICENCIADO EM COMPUTAÇÃO
  • 2.
    CRIAÇÃO DE PROGRAMAS Os programas são criados a partir de arquivos texto, que contêm um roteiro estruturado de passos e ações a serem executadas pelo programa que se deseja, ou seja, estes arquivos texto são uma representação dos algoritmos que se desejam programar.  Estes passos e ações estão descritos dentro do arquivo texto através de uma linguagem de programação e por isso são usualmente chamados de arquivo fonte do programa (resumidamente arquivo fonte ou fonte).  As linguagens de programação utilizadas podem ser de alto, médio ou baixo nível, mas qualquer que seja a linguagem, seu tipo e a forma de estruturação do programa, o arquivo fonte continua a ser simplesmente um texto, análogo à uma redação, sujeito à regras de sintaxe e de contexto.
  • 3.
     Da mesmaforma que os computadores não entendem a nossa linguagem, ou seja a linguagem que naturalmente utilizamos para nossa comunicação, estas máquina tão pouco entendem as linguagens de programação diretamente.  Existem entidades especiais responsáveis pela transformação do arquivo fonte do programa em uma forma passível de execução pelo computador.  Estas entidades estão ilustradas na Figura 4.7.
  • 4.
    Figura 4.7: Esquemade criação de programas
  • 5.
     O compilador(compiler) é um programa especial que traduz o arquivo fonte em um arquivo binário que contêm instruções, dados e endereços (representados binariamente) que permitem executar as ações necessárias através das instruções em linguagem de máquina do processador existente no computador em questão.  Os arquivos binários produzidos pelo compilador são os arquivos objeto ou resumidamente objeto. Note que cada compilador é apropriado para uma única linguagem de programação.
  • 6.
     O ligador(linker), quando necessário, apenas encadeia dois ou mais arquivos objeto sob a forma de um único arquivo de programa executável ou arquivo executável. O arquivo executável é aquele que pode ser transferido para a memória do computador possibilitando a execução do programa.  Assim como os compiladores, o ligador também é uma entidade deste processo de geração de programas e também está sujeito a operar com arquivos objeto produzidos apenas por determinados compiladores.  Devemos ressaltar que até agora os arquivos fonte, objeto e executável constituem arquivos, ou seja, estão armazenados nas estruturas de memória secundária (unidades de disco rígido, discos flexíveis, fitas, cartuchos ou discos ópticos).
  • 7.
     Existe umaoutra entidade especial, chamada carregador (loader), que é parte integrante do sistema operacional, responsável por transportar os arquivos de programa executável da memória secundária para a memória principal, onde se dará a execução do programa carregado.  Os carregadores constituem uma parte do sistema operacional porque a colocação de programas na memória e a execução dos mesmos são funções deste, responsável por controlar eficientemente as estruturas de memória primária, de armazenamento secundário e o processamento do sistema computacional.
  • 8.
     Após otransporte do arquivo executável para a memória principal é possível iniciar sua execução, onde ele mesmo se transforma numa imagem executável, que representa a expansão do código de programa contido no arquivo executável em código executável, áreas de memória reservadas para variáveis do programa, pilha retorno e área extra para alocação dinâmica por parte do programa.  A bem da verdade, o sistema operacional, antes da carga do módulo de código, deve conhecer de antemão seu tamanho total e a quantidade mínima de memória extra necessária.  Tais informações residem geralmente num cabeçalho (header) localizado no início do arquivo de programa executável, que não é copiado para memória, mas apenas lido pelo sistema operacional.