xbook2
ver 0.1.7 - basic kernel
xbook2操作系統內核是一個基於intel x86平台的32位處理器的系統內核,可運行在qemu,bochs,virtual box,vmware等虛擬機中。也可以在物理機上面運行(需要有系統支持的驅動才行)
xbook2被設計成一個跨處理器平台的架構,有ARCH目錄,可以在裡面添加一個新的處理器平台。不過目前也是盡量將平台相關的分離到arch裡面,並未完全分離出來,待後面多實現幾個平台後,才能更好的讓處理器平台和內核部分進行更優化的分離。
內核結構示意圖:
USER MODE:
+---------------------------+
| libs | apps |
+---------------------------+
KERNEL MODE:
+---------------------------+
| FSAL |
+---------------------------+
+---------------------------+
|task | ipc | vmm | drivers |
+---------------------------+
| arch |
+---------------------------+
/
+---------------------------+
| hardware |
+---------------------------+
| 目錄 | 描述 |
|---|---|
| develop | 開發時用到的磁盤鏡像,ROM文件系統內容等 |
| doc | 操作系統相關的文檔 |
| scripts | 用到的xbuild腳本和其它配置文件 |
| src | xbook2內核的源碼 |
| tools | 內核開發需要用到的工具 |
| bin | 命令行可執行程序 |
| sbin | 系統使用的程序 |
| libs | 用戶態庫 |
系統功能列表:
多进程,内核多线程,用户多线程
虚拟内存管理,分页内存管理,物理内存管理
管道通信,共享内存,消息队列,信号量
IDE硬盘驱动,PS/2鼠标,键盘驱动,VBE视频驱动
UART串口驱动
FATFS文件系统
PTHREAD线程库
xbook2內核開發文檔
整体思路:
1. 用git从仓库克隆源码或者直接下载源码。
2. 配置最基础的工具集:gcc, nasm, ld, dd, rm, objdump, objcopy。
3. 配置虚拟机:qemu(默认),bochs,virtual box, vmware任选其一。
5. 进入xbook2的根目录目录,打开终端或者命令行,输入命令make build先构建环境,然后make run编译运行。
1.下載我提取的工具包:BuildTools, 下載後配置解壓目錄環境變量到系統環境變量Path裡面。 (注意,如果你的電腦上已經有mingw或者cygwin環境,請把這個工具包的環境變量放到靠前的位置,不然不會執行工具包裡面的程序)。 除此之外,由於支持了grub,所以需要單獨的配置grub的工具環境,也是在BuildTools裡面的。所以需要配置環境變量的目錄如下:
BuildTools
BuildTools/genisoimage
BuildTools/grub-2.04
BuildTools/mkfs
BuildTools/mtools
2.下載qemu最新版:Qemu 下載後安裝,配置安裝目錄環境變量到系統環境變量Path裡面,或者下載我提取的版本:Qemu-i386,下載後配置解壓目錄環境變量到系統環境變量Path裡面。
3.如果想要用虛擬機加速,下載windows下面的qemu加速擴展程序HAXM v7.6.5:,下載後安裝即可.
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 grub如果遇到工具鏈編譯鏈接時出錯,可以嘗試到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 # 只清除用户态生成的内容聯繫方式: 開源官網:www.book-os.org
E-mail: [email protected]
個人郵箱:[email protected]
個人QQ: 2323168280
開發交流QQ群:913813452