4.02 sur 5
4.02

Écrivez votre propre système d’exploitation à partir de zéro – étape par étape

Créez votre propre système d'exploitation 64 bits - pour l'architecture x86
Être capable de construire un système d'exploitation simple pour l'architecture x86.
Comprendre le mode réel
Comprendre le mode protégé et le mode long
Comment gérer les interruptions et les exceptions en mode 64 bits
Comment écrire le noyau du système d'exploitation avec le code assembleur et le code C
Être capable d'écrire la fonction d'impression pour imprimer des caractères à l'écran
Être capable de construire un gestionnaire de mémoire en utilisant le mécanisme de pagination x86
Comment écrire un gestionnaire de minuterie pour le gestionnaire de processus
Comment créer un gestionnaire de processus pour planifier les processus et les modifier entre différents états (veille, prêt, tué)
Comment implémenter le module d'appel système pour que les programmes utilisateur s'exécutent dans le système
Écrire un pilote de clavier (PS/2)
Écrire une console simple et interagir avec le noyau du système d'exploitation à l'aide de commandes
Être capable d'écrire un module de système de fichiers simple qui prend en charge la lecture du système fat16.

Bienvenue pour écrire votre propre cours sur le système d’exploitation 64 bits.

Ce cours vous apprend à créer un système d’exploitation simple à partir de zéro. Il couvre les bases de l’architecture x86 et de la programmation de bas niveau. Dans ce cours, nous vous guiderons pas à pas dans le processus de construction d’un petit système de travail.

La première partie du cours enseigne tout ce que vous devez savoir (modes de processeur, pagination, gestion des exceptions et des interruptions , etc.) avant de pouvoir construire le noyau sur l’architecture x86. Dans cette partie, nous verrons comment préparer le changement de mode. On passe du mode réel au mode protégé puis on passe au mode long. Notre noyau fonctionne en mode 64 bits. Après être passé en mode 64 bits, nous verrons comment gérer les exceptions et les interruptions, comment basculer entre le mode noyau et le mode utilisateur.

La deuxième partie du cours vous apprend à construire des modules noyau tels que comme les processus, la gestion de la mémoire, la gestion des interruptions, etc. Dans cette partie, nous verrons comment écrire un pilote de clavier et une console, comment interagir avec le noyau de l’OS à l’aide de la console. Après avoir terminé cette partie, vous devez savoir comment écrire des programmes utilisateur et les faire fonctionner dans votre propre système d’exploitation.

 

  • Dans ce cours vous apprendrez :

         Comment créer un système d’exploitation simple pour l’architecture x86.

Comprendre le mode réel

Comprendre le mode protégé et le mode long

Comment gérer les interruptions et les exceptions en mode 64 bits

Comment écrire le noyau du système d’exploitation avec le code assembleur et le code C

Être capable d’écrire la fonction d’impression pour imprimer des caractères à l’écran

Être capable de créer ungestionnaire de mémoire en utilisant le mécanisme de pagination x86

Comment écrire un gestionnaire de minuterie pour le gestionnaire de processus

Comment créer un gestionnaire de processus pour planifier les processus et les modifier entre différents états (veille, prêt, arrêté)

Comment implémenter le module appel système pour exécuter des programmes utilisateur dans le système

Écrire un pilote de clavier (PS/2)

Écrivez une console simple et interagissez avec le noyau du système d’exploitation à l’aide de commandes

Être capable d’écrire un module de système de fichiers simple qui prend en charge la lecture du système fat16.

 

À la fin du cours, vous devriez être capable de développer votre propre système d’exploitation 64 bits.

Introduction

1
Introduction
2
MUST SEE
3
Operating System Concepts
4
Operating System Structures

Installation and Setup

1
Working with Windows 10
2
Working with MacOS
3
Working with Linux (Ubuntu)
4
How to Use Resources

Boot Up

1
The First Program

In this lecture, we will write our first program in assembly language to boot the virtual machine and real machine from usb flash drive.

2
Test Disk Extension Service

Loading the Loader and Switching to Long Mode

1
Loader

In this video, we will read the loader from disk into memory.

2
Long Mode Support

We will check to see if the processor supports long mode.

3
Load Kernel File
4
Get Memory Map

In this video, service E820 is used to get memory map info.

5
Test A20 Line
6
Set Video Mode

In this video, we will learn how to print characters on the screen in text mode.

7
Protected Mode

In this lecture, we will switch to protected mode and set up environment for long mode.

8
Long Mode

The operating system is designed to run in 64-bit mode and all the modules we will build are running in this mode.

Exceptions and Interrupts Handling on the x86

1
Jumping to Kernel
2
Reload GDT
3
Exceptions and Interrupts Handling
4
Saving Registers
5
Setting Up the Interrupt Controller
6
Getting to Ring3
7
Interrupts Handling in Ring3 Part I
8
Interrupts Handling in Ring3 Part II
9
Spurious Interrupt Handling

Working With C

1
Kernel Main

In this lecture, we will see how to write the kernel using assembly and c language.

2
Putting It All Together
3
Simple Library Functions
4
Print Function
5
Assertion

Memory Management

1
Retrieve Memory Map
2
Paging
3
Memory Allocator
4
Memory Pages
5
Free Memory Page
6
User Space

Processes

1
The First Process
2
System Call
3
Scheduling
4
Sleep and Wake Up
5
Exit and Wait
6
Terminate A Process

Keyboard And Console

1
Write A PS/2 Keyboard Driver 1
2
Write A PS/2 Keyboard Driver 2
3
Interact With Kernel Using Console

BONUS: File System

1
Introduction
2
Working with Windows 10
3
Working with Linux (Ubuntu)
4
Working with MacOS
5
The New Loader
6
FAT16 Structure
7
Loading Files From the FAT16 Image
8
The Idle Process
9
The File Module
10
Fork
11
Exec
12
The New Console
13
LS Command

Conclusion

1
Conclusion
Vous pouvez afficher et revoir les supports de cours indu00e9finiment, comme une chau00eene u00e0 la demande.
Absolumentu00a0! Si vous disposez d'une connexion Internet, les cours sur WeCours sont disponibles u00e0 tout moment sur n'importe quel appareil. Si vous n'avez pas de connexion Internet, certains instructeurs permettent u00e9galement u00e0 leurs u00e9tudiants de tu00e9lu00e9charger les cours. instructeur cependant, alors assurez-vous d'u00eatre de leur bon cu00f4tu00e9u00a0!
4
4 sur 5
Notes79

Détails des Notes

Étoiles 5
34
Étoiles 4
22
Étoiles 3
14
Étoiles 2
2
Étoiles 1
2
Suivre un cours
Garantie de remboursement de 30 jours

Inclut

10 heures de vidéo à la demande
articles 1
Accès complet à vie
Accès sur le mobile et la télévision
Certificat d'achèvement

Archive

Working hours

Monday 9:30 am - 6.00 pm
Tuesday 9:30 am - 6.00 pm
Wednesday 9:30 am - 6.00 pm
Thursday 9:30 am - 6.00 pm
Friday 9:30 am - 5.00 pm
Saturday Closed
Sunday Closed