2008/7/15 Star Liu <[EMAIL PROTECTED]>:

> 2008/7/14 Taishan <[EMAIL PROTECTED]>:
> > 另外向你推荐一件模拟器软件bochs。
> > vmware这类偏向应用的模拟器软件为了最大化发挥机器的性能,利用CPU的保护模
> > 式下的虚拟机技术拦截中断及IO操作,但各个指令还是要放到真正的CPU上执行
> > 的,是一种"部分"的模拟。
> > 而bochs是一个完完全全的软件模拟器,每一个指令都被bochs程序进行解释并执
> > 行,而不是放到CPU上直接执行,这样作虽然牺牲了性能,但可以做到很多vmware
> > 这类模拟器不能做到的事情,你甚至可以像调试程序那样单步运行和在运行时改变
> > 内存的内容以及CPU的寄存器状态等。因此bochs非常适合作为学习研究之用,或者
> > 说bochs是一个"玩具"更为恰当,呵呵。
>
> 这东西确实挺伟大的,软件行业真是人才济济啊,呵呵
> 不过有个牛人建议我这种基础薄弱的人(不懂操作系统原理)先多学学理论,再去搞代码,我也觉得挺对的。把他的建议贴出来供大家参考吧
>
>
> Star Liu wrote:
>
>    I'm a self-learner of computer software, I hope I can know software
>    very clearly from the first instrction to the end applications. I have
>    read Intel IA32 and 64 architecture manuals, so I know some theories
>    about CPU execution environment, now I'm willing to read the real
>    code, my idea is to get the binary code, then follow its execution to
>    figure out the very basis of software, then i may continue to figure
>    out kernel....
>
>
> I tend to believe this is the wrong path for learning. It is wrong
> because PCs are becoming very complex systems, and because to learn
> something you need some simpler & pedagogical stuff (ie some good
> abstractions)
>
> I would suggest instead:
>
>  before all, read carefully all the web pages I referenced before!
>
>  first read a good book on operating systems.
> http://www.prenhall.com/tanenbaum/
> http://www.cs.vu.nl/~ast/books/mos2/<http://www.cs.vu.nl/%7East/books/mos2/>
>
>  Then read a good book on the internals of some kernel, in particular
> on linux or minix
> http://www.amazon.com/Linux-Kernel-Internals-Michael-Beck/dp/0201331438
> http://tldp.org/LDP/tlk/tlk.html
> http://kernelbook.sourceforge.net/
> http://kniggit.net/wwol26.html
> http://books.regehr.org/reviews/understandingthelinuxkernel.html
> http://www.kroah.com/lkn/
> http://www.informit.com/store/product.aspx?isbn=0131181637
> http://www.minix3.org/
>
> http://www.pearsonhighered.com/educator/academic/product/0,,0131429388,00%2ben-USS_01DBC.html
>
>  Read a good book on the internals of microprocessors
> http://computer.howstuffworks.com/microprocessor.htm
>
>  Read some academic stuff on non Posix ways of designing an operating
> system.
> http://www.coyotos.org/
> http://tunes.org/
>
> eventually, code some kernel code, either a Linux module, or a small
> kernel. This is very time consuming (I did try myself), mostly because
> of very low level devices details.
> Also read stuff describing PC hardware, like
> http://oreilly.com/catalog/9780596005139/
>
>
> I really and strongly suggest you to spend much more time on reading &
> learning, before coding.
>
> --
> Regards!
> Star
> Shanghai, China
>

如果真正的把这些资料读完,也要花费好长时间。。。

-- 
Border
Blog: http://b0rder.com/
Mail: borderj {at} gmail.com

回复