
OS JOS
joy1314bubian
菜鸟一枚
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
OS Diary Day2 monitor.c
判断kernel栈底的方法有两种。假设定义了变量uint32_t *ebp, 则既可比较ebp是否为栈底位置,也可比较ebp是否为0. 方法1: 文件entry.S中有这样几行: bootstack: .space KSTKSIZE .globl bootstacktop 可知栈底地址为变量bootstacktop的位转载 2015-11-11 14:55:33 · 325 阅读 · 0 评论 -
OS Diary Day 2 printfmt.c &&printf.c
printf函数族: snprintf()通过调用vsnprintf()函数实现。 后者将调用函数vprintfmt(), 在该函数中使用sprintputch()将字符输入到printbuf结构类型的变量中。 vprintfmt()函数是printf()函数族实现的核心,它支持左/右对齐,字符0填充, 10/16进制输出等诸多功能。 其实现的switch语句中的default部分比转载 2015-11-11 09:07:36 · 594 阅读 · 0 评论 -
OS Diary Day 1 console.c
console.c static void lpt_putc(int c) { int i; /* 0x378~0x37A parallel printer port 0378 w data port 0379 r/w status port bit 7 = 0 busy * 0x80转载 2015-11-10 19:52:56 · 591 阅读 · 0 评论