Le noyau du système d'exploitation XBook2 est un noyau de système de processeur 32 bits basé sur la plate-forme Intel X86, qui peut être exécuté dans Qemu, bochs, boîte virtuelle, VMware et autres machines virtuelles. Il peut également fonctionner sur une machine physique (les pilotes pris en charge par le système sont nécessaires)
XBook2 est conçu comme une architecture de plate-forme transversale avec un répertoire Arch où une nouvelle plate-forme de processeur peut être ajoutée. Cependant, il essaie actuellement de séparer autant que possible les pièces liées à la plate-forme, et elle n'a pas été complètement séparée. Ce n'est qu'après plusieurs plates-formes supplémentaires que la plate-forme de processeur peut que les pièces du noyau soient mieux séparées de manière plus optimale.
Diagramme schématique de la structure du noyau:
USER MODE:
+---------------------------+
| libs | apps |
+---------------------------+
KERNEL MODE:
+---------------------------+
| FSAL |
+---------------------------+
+---------------------------+
|task | ipc | vmm | drivers |
+---------------------------+
| arch |
+---------------------------+
/
+---------------------------+
| hardware |
+---------------------------+
| Table des matières | décrire |
|---|---|
| développer | Miroirs de disque, contenu du système de fichiers ROM, etc. utilisé pendant le développement |
| doc | Documentation liée au système d'exploitation |
| scripts | Scripts XBuild utilisés et autres fichiers de configuration |
| SRC | Code source du noyau XBook2 |
| outils | Outils requis pour le développement du noyau |
| bac | Programme exécutable de ligne de commande |
| sbin | Le programme utilisé par le système |
| lib | Bibliothèque de l'état de l'utilisateur |
Liste des fonctions du système:
多进程,内核多线程,用户多线程
虚拟内存管理,分页内存管理,物理内存管理
管道通信,共享内存,消息队列,信号量
IDE硬盘驱动,PS/2鼠标,键盘驱动,VBE视频驱动
UART串口驱动
FATFS文件系统
PTHREAD线程库
Documentation de développement du noyau XBook2
整体思路:
1. 用git从仓库克隆源码或者直接下载源码。
2. 配置最基础的工具集:gcc, nasm, ld, dd, rm, objdump, objcopy。
3. 配置虚拟机:qemu(默认),bochs,virtual box, vmware任选其一。
5. 进入xbook2的根目录目录,打开终端或者命令行,输入命令make build先构建环境,然后make run编译运行。
1. Téléchargez la boîte à outils que j'ai extraite: BuildTools, et après téléchargement, configurez la variable d'environnement du répertoire de décompression dans le chemin de variable d'environnement système. (Notez que si vous avez déjà un environnement Mingw ou Cygwin sur votre ordinateur, veuillez mettre les variables d'environnement de cette boîte à outils en position avant, sinon les programmes de la boîte à outils ne seront pas exécutés). De plus, puisque Grub est pris en charge, l'environnement de l'outil pour Grub doit être configuré séparément, qui est également dans BuildTools. Ainsi, le répertoire où les variables d'environnement doivent être configurées sont les suivantes:
BuildTools
BuildTools/genisoimage
BuildTools/grub-2.04
BuildTools/mkfs
BuildTools/mtools
2. Téléchargez la dernière version de Qemu: Qemu. Après téléchargement, installez-le, configurez la variable d'environnement du répertoire d'installation dans le chemin de variable de l'environnement système ou téléchargez la version que j'ai extraite: qemu-i386. Après téléchargement, configurez la variable d'environnement du répertoire de décompression dans le chemin de variable d'environnement système.
3. Si vous souhaitez utiliser l'accélération de la machine virtuelle, téléchargez l'extension d'accélération Qemu sous Windows Haxm v7.6.5: et installez-le après le téléchargement.
1.安装gcc, nasm:
Ubuntu/Kali Linux: sudo apt-get install gcc nasm truncate
Red hat/Fedora/Centos: sudo yum install gcc nasm truncate
2.安装qemu虚拟机:
Ubuntu/Kali Linux: sudo apt-get install qemu-system-x86
Red hat/Fedora/Centos: sudo yum install qemu-system-x86
3.安装grub引导相关工具:
Ubuntu/Kali Linux: sudo apt-get install grub mtools genisoimage
Red hat/Fedora/Centos: sudo yum install grub mtools genisoimage
# 1.安装 i386-gcc
> brew tap nativeos/i386-elf-toolchain
> brew install i386-elf-binutils i386-elf-gcc
# 2.安装 truncate nasm qemu
> brew install truncate nasm qemu
# 3.安装 grub
> brew install grubSi vous rencontrez une erreur lors de la compilation du lien de la chaîne d'outils, vous pouvez essayer de trouver une solution dans le fichier FAQs.md.
> make build # 构建环境
> make run # 编译并运行,默认使用qemu虚拟机运行 > make # 只编译源码
> make build # 构建环境
> make debuild # 清理环境
> make run # 编译并运行,默认使用qemu虚拟机运行
> make qemu # 使用qemu虚拟机运行
> make clean # 清除编译产生的对象文件以及可执行文件
> make user # 只编译用户程序(在开发应用时常用)
> make user_clean # 只清除用户态生成的内容Coordonnées: Site officiel open source: www.book-os.org
E-mail: [email protected]
Courriel personnel: [email protected]
QQ personnel: 2323168280
Développement et communication QQ Groupe: 913813452