汇编网首页登录博客注册
mouse的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
  •  我要做些我能做的事情,不能老是睡下去了!
  • 『姓名』:;-)               
  • 『性别』:男    『发送消息
  • 个人说明:我的小老鼠;-)
  • 详细信息『加为好友』
学习动态

[2008-02-28 14:55] [转]操作系统的几个概念 Toyix

转自Toyix OS广场

[ sysnap 发表于 2008-01-10 19:01 ] 

我们要明确"进程"只是个概念而已,它所代表的含义到底是什么呢 
还是从头说起吧 
我们为什么要用计算机?答案很简单:要使用计算机的cpu,让它的高速度来帮助完成复杂而重复的计算;要利用计算机的一些外部设备,用硬盘来存储数据,用打印机来打印资料,用显示器看电影等等. 
我们怎么用这些资源呢?呵呵:当然是我们要写代码了,让cpu来执行它.即我们通过自己的代码来控制cpu,来达到使用计算机的资源的目的.说白了,就是当我的程序运行这个过程中,我们的程序就可以使用计算机的所有硬件设备. 
什么是进程?上面说了,程序的运行过程就是在控制计算机.我们把"程序的运行过程"这个名词,使用"进程"这个名词代替. 
进程可以控制计算机所有的资源. 
这就是进程. 


[ abcabc 发表于 2008-01-10 20:03 ] 

信号量机制是荷兰学者Dijkstra在1965年提出的,主要解决进程的同步问题。  

信号量S被定义为一个整形变量,对它的操作为:设置信号量初始值的操作、P原语操作、V原语操作。  

P原语操作:  
(1)S减1;  
(2)若S减1后仍大于或等于零,则进程继续执行;  
(3)若S减1后小于零,则该进程被阻塞后进入与该信号相对应的队列中,然后转进程调度。  

V原语操作:  
(1)S加1;  
(2)若相加结果大于零,则进程继续执行;  
(3)若相加结果小于或等于零,则从该信号的等待队列中唤醒一等待进程,然后再返回原进程继续执行或转进程调度。  

Toyix中对应的描述:  
信号量类型:semaphore数据类型  
信号量的初始化:函数void set(semaphore far *p, int a);  
P原语操作:函数void p(semaphore far *p);  
V原语操作:函数void v(semaphore far *p);   


[ abcabc 发表于 2008-01-10 20:11 ]  

进程创建主要包括:进程的创建、进程的撤销、进程的阻塞、进程唤醒。 

toyix下对应的函数 
进程创建:fork、frk 
进程撤销:执行完了就被撤销了 
进程阻塞:sleep 
进程唤醒:wakeup
评论次数(2)  |  浏览次数(741)  |  类型(操作系统) |  收藏此文  | 

[  mouse   发表于  2008-02-28 14:58  ]

Toyix下的第一个程序

#include <toyix.h>
main()
{
        printf("\nHello World!\n");

保存为文件c:\1.c

编译:cc 1.c
运行:do 1 1 1

http://www.toyix.net/tutorial/tutorial.htm#a14

[  fontomas   发表于  2008-08-05 21:41  ]

我知道 toyix.net,but, os广场是哪个网站?

 
 请输入验证码  (提示:点击验证码输入框,以获取验证码