上周四在sf申请的project,周一晚上就批下来了。现在亢哧亢哧的做着,结果究竟如何是个不知数,闲着找点事做吧,免得自己慢慢失去了动力。花了一晚上看sf管理站点方法,顺便做了个简单web,挺丑的。试了好几款sftp工具,可能是内网firewall原因,只有ws_ftp可以联上。
大致介绍一下:linux环境,gcc编译器,c++语言,混合式内核(现在还只是单内核),目前目标平台i386/arm。刚刚完成了MM部分,都是移的linux算法(buddy,slab等),整个MM就一个类,彻底荤菜,呵呵。如果找些人讨论讨论c++倒是好事(当然不是那种无里头的,得先看书),但是我c++超菜鸟,又不善组织,希望冥冥中得遇大老指点一二。
不知道sf大家访问有没有问题,贴一些主要内容:
版本历史:
3.1.1版:代号:
总体目标/功能:xx
3.0.0版:代号:
总体目标/功能:(发布稳定系统)
2.1.1版:代号:
总体目标/功能:单元测试,bug修复
2.0.0版:代号:
总体目标/功能:(完成系统核心,封锁版本)
1.7.1版:代号:
总体目标/功能:完成计划的第8章节
1.6.1版:代号:xx(2008-02-05 ~ 2008-05-05)
总体目标/功能:完成计划的第7章节(tcp/ip)
1.5.1版:代号:xx(2008-01-01 ~ 2008-02-04)
总体目标/功能:完成计划的第6章节(文件系统)
1.4.1版:代号:xx(2007-10-25 ~ 2007-12-24)
总体目标/功能:完成计划的第5章节(设备驱动)
1.3.1版:代号:xx(2007-10-10 ~ 2007-10-24)
总体目标/功能:单元测试,bug修复
1.2.1版:代号:一帘忧梦(2007-07-01 ~ 2007-09-24正在进行中)
总体目标/功能:完成计划的第1,2,3,4章节
(4).jinix-1.2.1.2007-07-19_09.18.22.tar.bz2
完成slab算法调研及编写
内核初始化流程完善,及相关部分接口/框架
(3).jinix-1.2.1.2007-07-15_16.36.41.tar
textio类重载<<运算符以支持cout << __func__;
内存管理初始化及buddy算法完成, 内核对象完善(启动流程)
(2).jinix-1.2.1.2007-07-12_18.49.44.tar.bz2
内核对象编写,boot.S->head.S,初始化汇编文件中全局变量移入bootdata.cpp中
内存管理类接口编写,以及使用到的相关数据结构从linux中移植
(1).jinix-1.2.1.2007-07-03_21.07.57.tar.bz2
某些初始化过的全局变量被编译到bss节去了,被boot.S文件清空,
调整到新Makefile, 和unixlite相似
使用__attribute__((section(...强制链接到.data
(0).jinix-1.2.1.2007-06-30_17.50.21.tar.bz2
控制台显示部分调试完成, textio和ostream调试完成
1.系统初始化 |
|
内核启动 |
完成 |
|
i86硬件初始化(分页) |
完成 |
|
时钟初始化 |
完成 |
|
中断及异常初始化 |
完成 |
|
reboot/halt/poweroff |
完成 |
|
acpi/apm |
未完成 |
|
fpu/mmx/sse/sse2 |
未完成 |
2.支撑型数据结构和算法 |
|
hash |
完成 |
|
队列 |
完成 |
|
链表 |
完成 |
|
fifo/lifo |
完成 |
3.内存管理子系统 |
|
buddy算法 |
完成 |
|
slab分配器 |
完成 |
|
页异常处理 |
完成 |
|
cow(copy on write) |
未完成 |
|
demand paging |
未完成 |
|
守护线程(swap,页面冲洗) |
未完成 |
4.进程及任务调度 |
|
任务切换 |
未完成 |
|
fork() |
未完成 |
|
调度算法 |
未完成 |
|
内核线程 |
未完成 |
|
idle线程 |
未完成 |
|
用户线程 |
未完成 |
|
同步机制:内核锁和原子操作 |
未完成 |
5.设备驱动 |
|
中断机制 |
未完成 |
|
驱动框架及对外接口考虑 |
未完成 |
|
字符设备驱动框架 |
未完成 |
|
块设备驱动框架 |
未完成 |
|
网络设备驱动框架 |
未完成 |
|
控制台驱动(显卡,键盘,鼠标) |
未完成 |
|
dma驱动 |
未完成 |
|
pci驱动 |
未完成 |
|
8029/8139, ne2000网卡驱动 |
未完成 |
|
usb驱动 |
未完成 |
6.文件系统 |
|
proc |
未完成 |
|
ramdisk |
未完成 |
|
ext2 |
未完成 |
|
ext3 |
未完成 |
|
vfat |
未完成 |
|
可执行文件elf加载 |
未完成 |
|
动态链接库和内核模块 |
未完成 |
7.TCP/IP网络模块 |
|
数据链路层(Layer 2) |
未完成 |
|
IP层(Layer 3) |
未完成 |
|
icmp, arp, ip, 路由协议 |
未完成 |
|
tcp, udp |
未完成 |
|
socket接口 |
未完成 |
8.进程间通信IPC |
|
共享内存 |
未完成 |
|
信号量 |
未完成 |
|
消息队列 |
未完成 |
9.posix支持及其他 |
|
susv3调研 |
未完成 |
|
lsb调研 |
未完成 |
|
posix兼容及测试 |
未完成 |
|
linux-abi兼容 |
未完成 |
|
shell及常用application |
未完成 |
|
arm体系架构调研 |
未完成 |