Nejlepší odpověď
Vzhledem ke znění, které používáte, se mi zdá, že mluvíte o softwaru, který bude na některých spuštěn jakýsi vestavěný systém na rozdíl od softwaru, který bude nasazen jako desktopová aplikace nebo jiná varianta.
Před spuštěním programu na konkrétním hardwaru existuje několik kroků, které je třeba dodržet, abyste převedli zdrojový kód, který jste napsali, na něco, co může stroj skutečně interpretovat.
Váš zdrojový kód je napsán v jazyce, který má určitou syntaxi a sémantiku a který je pro vás čitelný, zatímco procesor očekává a rozumí pouze 1 s a 0 s.
Při práci s kompilovanými jazyky existují řada nástrojů, které při použití v určitém pořadí a při podávání se správnými vstupy vytvoří něco, co je běžně známé jako softwarový obrázek. Tento softwarový obrázek je to, co nakonec načtete do cíle.
V závislosti na vašem hardwaru a na tom, jak budujete svůj řetěz nástrojů, se nástroje pro vytvoření softwarového obrazu budou lišit, ale určitě budete potřebovat preprocesor, kompilátor a linker.
Zdrojový kód je předán preprocesoru, který vyřeší některé věci (makra, direktivy preprocesoru a další), v tomto okamžiku máte mezilehlý soubor, který je pro vás stále čitelný. Poté je předzpracovaný soubor předán kompilátoru, který vygeneruje soubor objektu. Musíte kompilátorovi sdělit, jak a jaké soubory má přijmout, aby vytvořil správné soubory objektů.
Nakonec linker zkombinuje různé soubory objektů z předchozího kroku tak, jak mu řeknete, a výsledkem bude binární obraz (linker zvládne propojení knihoven a dalších věcí, které nemohly bude vyřešeno ve fázi kompilace).
Instalace nebo testování softwarového obrazu znamená načíst binární obraz, který jste vytvořili v posledním kroku, do cílového hardwaru. Načítání se obvykle provádí zkopírováním obrazu do energeticky nezávislé paměti.
Toto je široký popis procesu a nemá to být vyčerpávající.
Odpověď
Přečíst si před sebou dvě odpovědi a přiznat, že ne jistě, na co se vlastně ptáte, toto jsou věci, na které byste mohli odkazovat.
V mnoha víceuživatelských systémech existuje na stroji pouze jedna sada hardwarových registrů, které je třeba sdílet, obvykle dát každému uživateli kousek času (řekněme 10 ms) a pak přejít na další a další. Stav dat každého uživatele se nezmění, protože je uložen na disku nebo v nevyužité paměti. Stav sady registrů musí být uložen jako snímek toho, co se děje v tomto okamžiku, aby mohly být obnoveny při příštím výběru uživatele.
Další použití tohoto výrazu je nutná správa matematiky a paměti. držet obrázek v paměti, na rozdíl od pouhého skenování řady řádků různých hodnot.
Za starých časů počítačů s hlavním rámcem byl zdrojový kód kompilován nebo sestaven do knihoven „Core image“, strojů jazyk jako blok, který má být načten do paměti a poté spuštěn tak, jak je. Většina knihoven DLL používá podobnou teorii, pokud ne praxi.
Omlouvám se, že vše, co jsem udělal, byla kalná voda.