uCore
解琛
自问自成自求变,自强能立天地间。
展开
-
[从 0 开始写一个操作系统] 四、终端信息输出
从 0 开始写一个操作系统作者:解琛时间:2020 年 9 月 6 日 从 0 开始写一个操作系统4.1 CGA 输出4.1.1 cga_init4.1.2 cga_putc4.2 LPC 总线输出4.2.1 lpt_putc4.3 串口输出4.3.2 serial_init4.3.3 serial_putc4.4 串口中断输入捕获4.4.1 serial_intr4.5 键盘中断输入捕获4.5.1 kbd_init4.5.2 pic_initlab1:kern/console.c: cga_i原创 2020-09-06 13:32:04 · 469 阅读 · 0 评论 -
[从 0 开始写一个操作系统] 三、Bootloader 的实现
从 0 开始写一个操作系统作者:解琛时间:2020 年 8 月 30 日 从 0 开始写一个操作系统三、Bootloader 的实现3.1 项目整体框架3.1.1 bootloader3.1.2 ucore 操作系统3.1.2.1 系统初始化3.1.2.2 内存管理3.1.2.3 外设驱动3.1.2.4 中断处理3.1.2.5 内核调试3.1.3 公共库3.1.4 工具3.2 bootloader 进入保护模式3.2.1 清理环境3.2.2 使能 A203.2.3 初始化 GDT 表3.2.4 进原创 2020-08-31 00:46:25 · 472 阅读 · 0 评论 -
[从 0 开始写一个操作系统] 二、系统软件启动过程
从 0 开始写一个操作系统作者:解琛时间:2020 年 8 月 30 日 从 0 开始写一个操作系统二、系统软件启动过程2.1 BIOS 启动过程2.2 bootloader 启动过程2.2.1 保护模式和分段机制2.2.1.1 实模式2.2.1.2 保护模式2.2.1.3 分段存储管理机制2.2.1.3.1 段描述符2.2.1.3.2 全局描述符表2.2.1.3.3 选择子2.2.1.3.4 保护模式下的特权级2.2.2 地址空间2.2.3 线性地址空间2.2.4 硬盘访问2.2.5 ELF 文原创 2020-08-30 15:38:33 · 881 阅读 · 1 评论 -
[从 0 开始写一个操作系统] 一、准备知识
从 0 开始写一个操作系统作者:解琛时间:2020 年 8 月 29 日 从 0 开始写一个操作系统一、准备知识1.1 实现方案1.2 gcc1.2.1 AT&T 汇编基本语法1.2.2 GCC 基本内联汇编1.2.3 GCC 拓展内联汇编1.2.4 案例1.3 makefile1.4 gdb1.5 QEMU1.6 gdb 和 qemu 联调1.7 设定目标架构1.8 Intel 803861.8.1 运行模式1.8.1.1 实模式1.8.1.2 保护模式1.8.2 内存架构1.8.3 寄原创 2020-08-29 02:06:20 · 1408 阅读 · 0 评论 -
[从 0 开始写一个操作系统] 六、编译过程分析
六、编译过程分析作者:解琛时间:2020 年 12 月 18 日 六、编译过程分析6.1 终端输出分析6.2 编译详细过程分析清华操作系统实验课程实验一:系统软件启动过程基于一个基本的 helloWorld 工程来分析其编译过程。6.1 终端输出分析使用 make 进行编译,终端输出如下。moocos-> make+ cc kern/init/init.c+ ld bin/kernel+ cc boot/bootasm.S+ cc boot/bootmain.c+ cc原创 2020-12-18 18:21:49 · 304 阅读 · 1 评论