IGD
IGD
, ou «Initialisation et Gestion de Démarrage», est un logiciel embarqué destiné à l'initialisation matérielle
et au lancement de l'environnement applicatif d'ordinateurs.
IGD
est actuellement à l'état de prototype, son usage est réservé de fait aux développeurs ayant un
moyen extérieur de re-flasher la puce contenant le logiciel.
IGD
est distribué selon les termes de la licence GPLv3
ou ultérieure.
Le langage de programmation utilisé est C11
, avec de l'assembleur pour certaines opérations spécifiques.
L'accent est mis sur le plus de code strictement conforme possible, en isolant les usages non-strictement
conformes définis par l'implémentation.
Il est possible d'utiliser gdb
pour le déverminage par le protocole distant, par exemple à travers un port
série, et ceci très tôt dans l'initialisation.
La langue utilisée pour le développement est le français.
Pour clôner le dépôt git
, exécutez :
$ git clone git://git.tuxfamily.org/gitroot/igd/igd.git
Pour mettre à jour votre copie :
$ git pull
Pour s'inscrire à la liste de diffusion de développement, envoyez subscribe
à
igd-dev-request@lists.tuxfamily.org.
Pour se désinscrire, envoyez unsubscribe
à
igd-dev-request@lists.tuxfamily.org.
Les archives de la liste de diffusion est accessible ici.
M4A785TD-EVO
Les outils suivants sont nécessaires à la construction :
gcc
- 4.9 ou supérieurbinutils
- 2.24 ou supérieurkconfig
make (GNU)
Pour écrire une EEPROM
, vous aurez besoin de flashrom
.
Le démarrage s'effectue sur une partition EFI
System Partition formatée en
ext2
, ext3
, ou ext4
. La table des partitions doit être en GPT
.
Le chargement cherche une configuration suivant
The Boot Loader Specification.
Les entrées doivent utiliser le mot-clé linux
pour
désigner le noyau à charger. Le chargement d'initrd n'a pas été fortement testé.
Il n'y a aucune interaction utilisateur lors du démarrage. Une erreur dans la configuration et l'ordinateur reste bloqué sans démarrer.
EFI 1.10
32 et 64 bitsgdb
distante plus générique et support de multiples fils d'exécutionBIOS
GPLv3
ou ultérieure