1.3) Ma vision du projet
C’est
un projet très varié, vu tous les sujets abordés. J’ai énormément
appris. J’ai découvert le Verilog pour l’occasion, et j’ai appris à
concevoir puis coder un compilateur. Je me suis vraiment creusé la
cervelle.
Maitriser tout de A à
Z, tous les aspects d’un ordinateur, même très simple, ça apporte une
certaine saveur au projet, et une grande satisfaction.
En fait,
c’est un projet dont je rêve depuis que je suis tout gamin : comprendre
dans le détail comment fonctionne un ordinateur, de A à Z, et si
possible en concevoir un, et le réaliser soi-même de A à Z.
Ce
projet a nécessité de coder dans 3 langages différents : Verilog, C, et
mon langage A2Z_Basic. Ce jonglage est un bon exercice intellectuel
auquel je n’étais pas habitué.
Il faut vraiment bien organiser, découper et documenter son projet. Il
est facile d’être perdu…
Attention, c’est un projet de longue haleine, qui prend beaucoup de
temps. Il faut en avoir conscience avant de se lancer.
Mais
même si c’est un projet long, c’est faisable. Une fois que le projet
est découpé en plein de petits morceaux (le cœur, les périphériques,
l’assembleur, le compilateur, le système de fichier, etc…), chaque
portion est relativement simple ; sauf pour le compilateur qui est
clairement la partie la plus complexe, et qui nécessite de cramer plus
de neurones...
Mais surtout, une fois qu’une partie est
codée, débuggée, et qu’elle est fiable, alors elle est acquise, on
l’oublie totalement, et on passe ensuite à la couche supérieure. C’est
cet empilement de couches, d’abstractions, qui fait qu’on arrive à un
résultat complexe, à partir de briques relativement simples.
Bien
évidemment, coder une nouvelle partie, ça fait souvent ressortir les
bugs insoupçonnés de la strate d’en dessous. Mais on arrive tôt ou tard
à avoir 100% confiance en une strate, et dont on ne se préoccupe plus,
tout en sachant qu’elle existe et comment elle fonctionne.
Réussir cet empilement de couches, pour faire un ordinateur réellement
utilisable, ça donne vraiment une grande satisfaction.
Je suis vraiment fier d’avoir réalisé ce projet de A à Z, tout seul,
comme un grand.