xym5366吧 关注:76贴子:995
  • 9回复贴,共1

操作系统之进程的工作原理交流贴

只看楼主收藏回复

进程在cpu控制下应该像一个函数,执行后将该进程的寄存器状态存入一个内存队列地址中,再执行下一个进程,都执行完,再执行回来后,应该从那个寄存器状态内存中取出来,而这都应该有一个进程句柄作为一个列表,查询对应的寄存器组,这样就可以进行进程的循环管理了。


1楼2012-07-11 09:00回复
    @tinlinzzs @q1003577139 @jerrycheng567 @良化纲领_ @zx101y
    @zx101y @良化纲领_ @jerrycheng567 @q1003577139
    @Padme0Amidala @人工智能编程0 @HGtz2222 @飞翔的天地 @御坂美琴みさか
    @关签 @HGtz2222
    @RayCaster
    @RichSelian
    @itianda @Coding狂人 @EAgleLeo @candy76041820 @寒云似雾
    


    2楼2012-07-11 09:02
    回复
      3楼2012-07-11 09:02
      回复

        比如:
        我来写一个操作系统的模型描述。
        返回点:
        中断0(进行进程指令组中的一些变量初始化,比如一个变量存有进程总数,用这个进程数知道何时返回中断0;还有比如给新进程寄存器赋值;还有给这个内存地址加入新进程或减去执行完的进程等工作。)
        进程1的一条指令
        中断1(进行1号进程指令的所有寄存器压栈操作,并设设置好2号指令需要的寄存器值,用jmp返回,继续执行下一条“进程2的一条指令”)
        进程2的一条指令
        中断2
        进程3的一条指令
        中断3
        进程4的一条指令
        中断4
        进程5的一条指令
        中断5
        .
        .
        .
        .
        .
        .
        进程N的一条指令
        中断N
        ( cpu操作这些中断)
        


        5楼2012-07-11 09:45
        回复
          对上一条执行的寄存器用push压栈,而中断选择jmp跳最为有利。


          6楼2012-07-11 09:48
          回复
            这就跟PROCEDURE CALL差不多了……


            7楼2012-07-11 12:08
            收起回复
              -、-……我怎么感觉这个好像人人都懂


              IP属地:广东8楼2012-07-11 17:45
              收起回复