COMMENT CREER MON INTERFACE FACILEMENT

1 Prenez des cours de programmation informatique. À la différence du développement d'applications pour le web, la création d'un système d'exploitation requerra de votre part une très bonne compréhension des concepts d'algorithmes, de structures de données et de gestion de ressources matérielles [1] . Pour en arriver à ce point, beaucoup de gens obtiennent des diplômes d'un niveau très poussé et vous devez réaliser que ce ne sera pas en lisant un simple tutoriel que vous pourrez créer votre système d'exploitation. Des cours d'introduction à l'informatique sont disponibles gratuitement sur Internet.

2 Apprenez un langage de haut niveau comme Python. Lorsque vous aurez acquis une bonne compréhension de ce que représente l'informatique, l'étape suivante consistera pour vous à apprendre des langages tels que le C ou le C++ et à les connaitre sur le bout des doigts. Ce n'est pas une option et vous n'arriverez jamais à coder le contenu d'un système d'exploitation si vous êtes incapable d'écrire des applications suffisamment robustes.

Si vous débutez en langage C, consultez ce cours de programmation en langage C pour débutants qui est en langue anglaise, mais a l'avantage d'être gratuit. Lorsque vous aurez assimilé le contenu de ce premier cours, vous pourrez passer à l'étape suivante sur les principes fondamentaux du langage C. Vous pourrez ensuite passer à la programmation modulaire et la gestion de mémoire puis aux Pointeurs et la gestion de mémoire. Les cours ici mentionnés sont dispensés gratuitement par EDX et des professeurs du Dartmouth College. Notez qu'il est important de comprendre la langue anglaise pour avoir accès aux meilleurs textes dans ce domaine.

3 Apprenez un langage d'assemblage. Les langages d'assemblage représentent ce qu'il y a de plus bas niveau et permettent de maitriser les microprocesseurs des divers ordinateurs existant sur le marché au niveau du matériel. Chaque microprocesseur a un langage mnémonique qui lui est propre (x86 de Intel, AMD ou VIA ou autres) et de ce fait, vous devrez apprendre les versions correspondant à chacun des microprocesseurs sur lesquels vous voulez programmer. Comme pour l'apprentissage de diverses langues étrangères, vous devrez acquérir pour chaque type de processeur un vocabulaire (les instructions mnémoniques) et la grammaire (les modes d'adressage) qui leur sont propres. Ce n'est pas une tâche facile, mais c'est ainsi que vous apprendrez le fonctionnement de chaque type de processeur équipant les matériels sur lequel vous voulez programmer.

Si vous lisez ce livre open source dans sa totalité, vous acquerrez de robustes connaissances des microprocesseurs de la famille Intel et pourrez ainsi commencer à comprendre comment construire un système d'exploitation [2] .

Il est hautement recommandé de lire The Art of Assembly Language (l'art de la programmation en Assembleur), qui est disponible en ligne et téléchargeable gratuitement au format PDF pour l'imprimer et le lire hors ligne à tête reposée.

Vous devrez aussi effectuer des recherches ciblant plus particulièrement les microprocesseurs sur lesquels vous prévoyez de faire tourner votre système d'exploitation. Vous pourrez utiliser Google pour trouver les manuels téléchargeables décrivant les architectures de beaucoup de microprocesseurs, comme celles des fameux Intel IA64 ou celles des processeurs des familles ARM qui sont très volumineuses.