作者ggg12345 (ggg)
看板Programming
标题Re: [请益]不能卖OS,也要学写OS打下基础:从程式뤠…
时间Mon Jun 25 07:28:28 2007
※ 引述《l314 (红虫)》之铭言:
: 小弟就是个仅修过OS, 但从未trace过OS code的大四学生,
: 看了您的讨论串, 觉得非常心虚,
: 请问若想要自学,或接触Linux的kernel,
: 有没有什麽入门的方式, 或较佳的参考文件或书藉呢?
: (或是您有在台北开课, 可以免费旁听吗? orz..)
: ※ 引述《ggg12345 (ggg)》之铭言:
: : .....
: : NYU Stoney Brook 的 OS 课是 CSE306 , 习题是采用 Nachos , 这种课可以
: : 自习就学得会吗 ?
: : CS 的核心课不只是 OS , 为甚麽说做这种习题就跟教软体工程有关 ?
: : 练习过的先进们请介绍一下这个习题的特点, 为甚麽会跟软体工程扯上的 ?
在台湾教OS课程,也使用这个习题范例的有:
台大,中央,清华,淡江
原始的来源是 UC Berkerey , Source Program 是 C++ 写的,
目前维护的来源是
http://www.cs.washington.edu/homes/tom/nachos
跟这里很多人预期的刚好相反, 这个范例将所有硬体隔开, 原设计是在
现有的多工作作业系统上以类似自备 thread schedule/library 的形
式透过这个自备的dispatcher/schedule 以与之配合的 thread 写出OS
的基本模组, 概念上OS下层是个简化的 Logic Machine. 但使用者的程
式不是在这个 OS 上执行, 而是在 mips cpu emulater 上以高阶语言对
使用者程式编译出的 mips 指令码执行, 使用者层的应用程式是在 mips
emulater 之上, 而 mips emulater 是在 OS 模组之上. 范例主要是使
用 c++ 写的, 对使用语言工具, makefile 环境支援与版本控制, 除错
的追踪等是很好的练习经验. 不动到硬体, 所以不怕机器会死荡.
练习专题完全是各校各自发挥, 可以容忍创意. 很可惜移植到 X86 系
统上跑时, 原来支援 mips emulater dis-assembler trace 的部份被
删掉了. 整个练习的重点是看程式写程式, 以OS的内容做练习.
: : 做这个习题跟填鸭, 创造力真的有关吗 ?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.115.1.146
1F:推 ephesians:这篇应该m 59.112.228.164 06/25 10:34
2F:推 l314:谢谢您..借转个人版 140.119.201.20 06/25 12:46
3F:推 lg31cm:您老终於讲点实际的东西了,泪推 220.134.96.227 06/25 12:55
4F:推 ASTRAY:同意1F, 建议版大m 122.126.87.77 06/25 13:07
5F:推 gwliao:泪推~~~140.112.230.125 06/25 16:11