关于C语言的程序的运行机制的问题?
正常情况下,应用程序首先将程序镜像放入内存。
运行的时候,尤其是多线程程序运行的时候,系统是如何知道寄存器是哪一个程序的值。?
是不是有一个空间,专门存放程序当前状态时所有寄存器的值?
对于多线程或者说有进程的调度,而不是简单的单线程。每个进程可以独立开来,同时运行,那么是CPU还是OS做到的?
缓冲区又是怎么回事?
也就是说,我还不能理清 程序内部运行的具体过程。
我表示我是小白,希望有大神从头理一理,或者推荐可能的读物。。。
我看过的部分资料。。
http://wenku.baidu.com/view/ac658cc758f5f61fb736668a.html
http://zhidao.baidu.com/question/352922195.html