首页
社区
课程
招聘
[原创]自己实现的一个基于x86的操作系统
发表于: 2013-12-25 03:23 54028

[原创]自己实现的一个基于x86的操作系统

2013-12-25 03:23
54028
收藏
免费 5
支持
分享
最新回复 (128)
雪    币: 208
活跃值: (40)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
26
牛逼啊,我感觉还是不要搞IT了,和大牛的差距太大了,就象人和神之间的差距一样,唉.

同时再请教一下楼主,能给个linux参数超过6的系统调用的名字吗,我想查看一下x86下超过6个参数的系统调用的参数传递,找不到一个具体的名字.
2013-12-25 11:56
0
雪    币: 106
活跃值: (271)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
27
好东西,感谢分享
2013-12-25 12:17
0
雪    币: 103
活跃值: (126)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
28
真的厉害
2013-12-25 12:36
0
雪    币: 41
活跃值: (159)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
29
楼主可以放到Github上啊,大家一起star,fork~~
2013-12-25 12:55
0
雪    币: 8
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
30
楼主代码写的简洁明了,很佩服,很赞。正在看。
2013-12-25 13:20
0
雪    币: 435
活跃值: (1277)
能力值: ( LV13,RANK:388 )
在线值:
发帖
回帖
粉丝
31
嗯,确实该那么做
不过我当时突发奇想,能不能直接修改时钟中断栈上的寄存器值和陷阱帧,后来发现可以就这么做了
这样导致的结果是任务切换必须在时钟中断中进行,很不灵活
2013-12-25 14:04
0
雪    币: 25
活跃值: (72)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
32
楼主好厉害呀
2013-12-25 14:11
0
雪    币: 209
活跃值: (808)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
33
服就一个字!
2013-12-25 14:31
0
雪    币: 3836
活跃值: (4142)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
34
牛x。。。。。。。。。。。。。
2013-12-25 16:21
0
雪    币: 10939
活跃值: (2895)
能力值: ( LV5,RANK:71 )
在线值:
发帖
回帖
粉丝
35
无法学习啊,只能膜拜。
2013-12-25 17:05
0
雪    币: 350
活跃值: (27)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
36
LZ相当有钻研精神,值得学习!我曾经计划去写一个属于自己的操作系统,可惜最后没能实现。
2013-12-25 17:14
0
雪    币: 302
活跃值: (246)
能力值: ( LV4,RANK:45 )
在线值:
发帖
回帖
粉丝
37
我了个去。。。楼主碉堡了,楼主可是妹纸,我现在单身。。。。。。。。。。。。。。。
2013-12-25 17:22
0
雪    币: 225
活跃值: (144)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
38
真的很佩服楼主,感谢楼主。
我一定要仔细阅读楼主的代码,来深入理解底层机制。
2013-12-25 17:33
0
雪    币: 74
活跃值: (748)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
39
牛X啊。。。
2013-12-25 18:55
0
雪    币: 190
活跃值: (40)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
40
很牛!!!
2013-12-25 19:13
0
雪    币: 1233
活跃值: (907)
能力值: ( LV12,RANK:750 )
在线值:
发帖
回帖
粉丝
41
楼主干得不错!虽然这个前途不大,但是真心锻炼技术
2013-12-25 19:17
0
雪    币: 496
活跃值: (286)
能力值: ( LV13,RANK:400 )
在线值:
发帖
回帖
粉丝
42
顶一个,看到越来越多的人开始研究x86架构的硬件与软件交汇处的知识层级了,我觉得不久的将来,OS底层和硬件架构上层的知识会越来越普及,就像现在很多人会搞逆向一样。
楼主加油。
2013-12-25 19:55
0
雪    币: 135
活跃值: (63)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
43
此贴会火。技术是学不到lz的程度了,只有学习一下精神了。
2013-12-25 20:05
0
雪    币: 2
活跃值: (199)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
44
低调奢华有内涵,顶了!
2013-12-25 20:36
0
雪    币: 7
活跃值: (56)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
45
这个必须支持啊!仔细学习下!
2013-12-25 21:01
0
雪    币: 3
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
46
perl是因为安装Cygwin时没安装
那这些 找不到文件或者目录 的错误是怎么回事?
D:\tinix>cd kernel

D:\tinix\kernel>make  2>build.log

D:\tinix\kernel>cd ../

D:\tinix>cp kernel/kernelz boot/
cp: cannot stat `kernel/kernelz': No such file or directory

D:\tinix>cp kernel/system.map ./
cp: cannot stat `kernel/system.map': No such file or directory

D:\tinix>mv kernel/build.log ./

D:\tinix>cd boot

D:\tinix\boot>make
'make' 不是内部或外部命令,也不是可运行的程序
或批处理文件。

D:\tinix\boot>cd ../

D:\tinix>cp boot/oskernel.elf.gz ./oskernel
cp: cannot stat `boot/oskernel.elf.gz': No such file or directory

D:\tinix>cp boot/boot.map ./loader.map
cp: cannot stat `boot/boot.map': No such file or directory

D:\tinix>perl map2idc.pl  1>system.idc
'perl' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
2013-12-25 21:08
0
雪    币: 435
活跃值: (1277)
能力值: ( LV13,RANK:388 )
在线值:
发帖
回帖
粉丝
47
你的cygwin缺个make,重新运行cygwin的installer,装make包
其他的错误 要看build.log的内容
2013-12-25 21:39
0
雪    币: 257
活跃值: (67)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
48
很强大,帮顶个
2013-12-25 21:54
0
雪    币: 31
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
49
顶一个,我也写过,是基于微内核的,大部分内核的代码都是放到进程里实现的,后来发现各种进程中通讯太蛋疼了,后来没时间就没再搞了。
说实话,还是当初实现核心机制,比如线程切换、内存管理最有成就感,再往后就没意思了。
2013-12-25 22:19
0
雪    币: 31
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
50
回去翻了翻代码,发现我写过3个版本,第一个是传统版本,和你的差不多,编译方式差不多,功能也基本一样。
第二个就奇葩了,直接用VS2010编译,C++代码,各种类,微内核,IPC通讯各种蛋疼。
第三个去年搞的,微内核和纯X64,把线程切换和分页搞好就没动力。
2013-12-25 22:47
0
游客
登录 | 注册 方可回帖
返回
//