O processo de execução de um programa em um computador envolve diversas etapas. A seguir, um resumo geral das etapas envolvidas no processo de execução de um programa:
Compilação ou interpretação: O código-fonte do programa é traduzido para uma linguagem que o computador possa entender e executar. Isso pode ser feito por meio de um compilador ou de um interpretador, dependendo da linguagem de programação utilizada.
Carregamento: O programa compilado ou interpretado é carregado na memória do computador, geralmente na RAM (memória de acesso aleatório).
Execução: O programa começa a ser executado a partir do endereço de memória em que foi carregado.
Armazenamento: Durante a execução do programa, o computador pode armazenar dados em diversos tipos de memória, como a RAM (memória de acesso aleatório), o cache (memória de acesso rápido) e o disco rígido (HD ou SSD).
O processo de armazenamento de dados pode ser feito de diversas formas, dependendo do tipo de dado e do tipo de memória utilizada. Por exemplo, se um programa precisa armazenar uma variável em memória, ele pode alocar um espaço na RAM para armazenar esse valor. Se o programa precisa ler ou gravar dados em um arquivo, ele pode utilizar funções de entrada e saída (I/O) para acessar o disco rígido.
Cabe ressaltar que esse é apenas um resumo geral do processo de execução de um programa em um computador, e que existem diversos detalhes técnicos envolvidos em cada etapa. O processo pode ser bastante complexo, dependendo da linguagem de programação, do sistema operacional e do hardware utilizado.
Alguns vídeos para ilustrar
https://www.youtube.com/watch?v=RRBO9KYuN28
https://www.youtube.com/watch?v=7ax4h6Szxt0 (Tem alguns erros, mas esse é épico tem que assistir)
O processador não acessa diretamente os dados do HD (disco rígido) ou de qualquer outro dispositivo de armazenamento secundário. Na verdade, o acesso aos dados armazenados em um HD é realizado por meio de uma hierarquia de memória que é gerenciada pelo sistema operacional.
A hierarquia de memória começa com a memória cache, que é uma memória pequena, porém muito rápida, localizada dentro do processador. Quando um programa precisa acessar dados da memória principal, a CPU busca primeiro na memória cache, e se os dados estiverem lá, o acesso é realizado rapidamente. Se os dados não estiverem na memória cache, a CPU buscará na memória RAM, que é mais lenta, mas tem uma capacidade de armazenamento muito maior.
Caso os dados não estejam presentes na memória RAM, o sistema operacional irá buscar os dados no disco rígido ou em outro dispositivo de armazenamento secundário, como um SSD. Esses dispositivos de armazenamento secundário têm uma capacidade muito maior de armazenamento do que a memória RAM, mas são significativamente mais lentos.
Portanto, a CPU não acessa diretamente os dados armazenados em um HD ou outro dispositivo de armazenamento secundário. Em vez disso, os dados são transferidos para a memória RAM por meio de uma série de etapas de gerenciamento de memória realizadas pelo sistema operacional.
Em resumo esse conteúdo foi explicado nas aulas.
Na transferência de dados, há a presença de barramentos e microcontroladores que atuam como elementos facilitadores nesse processo.
Os barramentos são canais de comunicação que conectam os componentes do sistema, permitindo que eles troquem informações entre si. Existem diferentes tipos de barramentos, como o barramento de dados, o barramento de endereços e o barramento de controle, cada um com uma função específica na transferência de dados.
Os microcontroladores são circuitos integrados que incluem um microprocessador, memória e periféricos de entrada/saída, tudo em um único chip. Eles são frequentemente usados para controlar dispositivos e sistemas em que a eficiência energética, o tamanho compacto e o baixo custo são críticos.
Esses componentes são essenciais para a transferência de dados em um sistema computacional, pois permitem que os dados sejam movidos de um componente para outro de maneira rápida e eficiente. Durante o processo de transporte de dados, os dados são transmitidos por meio de sinais elétricos, que são interpretados pelos componentes conectados aos barramentos, como a CPU, a memória e os dispositivos de entrada/saída.