系统调用的类型

2017-03-07 17:02  出处:其他  作者:佚名   责任编辑:gushunjun1 

  根据系统调用的功能,可将其分为进程控制(类)的系统调用、进程通信(类)的系统调 用、文件操作(类)及设备管理(类)系统调用等。

  进程控制类的系统调用

  这类系统调用主要用于对进程的控制,如创建一个新的进程和终止一个进程的运行,获 得和设置进程属性等。

  (1 )创建和终止进程的系统调用。在多道程序环境下,为使多道程序能并发执行,必须 先利用创建进程的系统调用,为需要并发执行的各程序分?创建一个进程。当进程已经执 行结?或因发生异常情况而不能继续执行时,可利用终止进程的系统调用来结?该进程的 运行。

  (2 )获得和设置进程属性的系统调用。当创建一个(些)新进程后,为了能控制它(们) 的运行,应当能了解、确定和重新设置它(们)的属性。这些属性包括:进程标识符、进程优 先级、最大允许执行时间等。此时可利用获得进程属性的系统调用,来了解某进程的属性, 利用设置进程属性的系统调用,来确定和重新设?进程的属性。

  (3 )等待事件触发的系统调用。进程在运行过程中,有时需要等待某事件(条件)出现 后,方可继续执行。例如,一个进程在创建了一个(些)新进程后,需要等待它(们)运行结? 后,才能继续执行,此时可利用等待子进程结?的系统调用进行等待。又如,在客户/服务器 模式中,若无任何客户向服务器发出消息,则服务器接收进程便无事可做,此时该进程就可 利用等待(事件)的系统调用,使自己处于等待状态,一旦有客户发来消息时,接收进程便被 唤醒,进行消息接收的处理。

  进程通信类系统调用

  在OS中经常采用两种进程通信方式,即消息传递方式和共享存储区方式。当系统中 采用消息传递方式时,在通信前,必须先打开一个连接。为此,应由源进程发出一条打开连 接的系统调用open connection,而H标进程则应利用接受选接的系统调用accept connection 表示同意进行通信;然后,在源进程和目标进程之间便可开始通信,利用发送消息的系统调 用send message或者用接收消息的系统调用receive message来交换信息。通信结束后,还须 再利用关闭连接的系统调用close connection结束通信。

  用户在利用共享存储区进行通信之前,必须先利用建立共享存储区的系统调用建立一 个共享存储区,再利用建立连接的系统凋用将该共享存储区连接到进程自身的虚地址空间 上,然后便可利用读和写共享存储区的系统调用实现相互之间的通信。

  文件操作类系统调用

  对文件进行操作的系统调用数量较多,下面简单介绍一些对文件基本操作的系统调用。

  (1 )创建和删除文件。当用户需要在系统中存放程序或数据时,可利用创建文件的系 统凋用creat,由系统根据用户提供的文件名和存取方式来创建一个新文件;当用户不再需 要某文件时,可利用删除文件的系统调用将文件删除。

  (2)打开和关闭文件。用户在第一次访问某个文件之前,应先利用打开文件的系统调 用open,将指定文件打开,即系统将在用户(程序)与该文件之间建立一条快捷通路。在文 件被打开后,系统将给用户返回一个该文件的句柄或描述符;当用户不再访问某文件时,又 可利用关闭文件的系统调用close将此文件关闭,即断开该用户程序与该文件之间的快捷 通路。

  (3 )读/写文件。用户可利用读系统调用read,从已打开的文件中读出给定数目的字 符,并送至指定的缓冲区中;同样,用户也可利用写系统凋用write,从指定的缓冲区中将给定数目的字符写入指定文件中。read和write两个系统调用是文件操作类中使用最频繁的 系统调用。

  对文件进行操作的系统调用还有:建立目录、移动文件的读/写指针及改变文件属性等。

txplatform.exe是什么进程
狂修复Bug?QQ2013新春版Beta2不断更新
狂修复Bug?QQ2013新春版Beta2不断更新

QQ2013新春版Beta2在这这两周来起码发布了3个版本,这三天更是连续发布了2个版本。这算是在狂修复Bug吗?如果你像小编那样在使用某个QQ2013 Beta2的时候出现假死或者卡死的情况,那还...

xiaohu 2013-03-29 评论: 12 标签: QQ系列软件   txplatform.exe是什么进程  

QQ2013怎么删掉QQexternal.exe?QQ加速技巧
QQ2013怎么删掉QQexternal.exe?QQ加速技巧

有这么一个少数人知道的秘密——删掉QQexternal.exe能让QQ加速不在拖慢电脑。但删除QQ2013的QQexternal.exe文件会导致QQ2013无法正常启动。然而,无法删除QQexternal.exe不代表不能用同...

xiaohu 2012-11-13 评论: 189 标签: QQ技巧   txplatform.exe是什么进程  

QQexternal.exe是什么进程?QQ不再卡机的真相
QQexternal.exe是什么进程?QQ不再卡机的真相

qqexternal.exe是什么进程?为什么每次打开QQ之后都会看到它的存在?重点是,qqexternal.exe会占系统资源吗,会让系统变慢吗?qqexternal.exe是什么进程,让如此多的人删之而后快!接...

xiaohu 2012-11-07 评论: 97 标签: QQ技巧   txplatform.exe是什么进程  

QQ2012正式版再升级 只为修复旧版BUG?
QQ2012正式版再升级 只为修复旧版BUG?

2012年9月12日,QQ2012正式版静悄悄发布了一个版本号为4924的新版本。这个QQ2012正式版相对于之前的版本没有任何功能上的新增和修改,只是修复了一些BUG,让QQ2012更安全稳定流畅。...

xiaohu 2012-09-13 评论: 25 标签: QQ技巧   QQ系列软件  

腾讯证实QQ个人资料出故障 已经紧急修复
腾讯证实QQ个人资料出故障 已经紧急修复

针对近日用户反映的QQ个人资料异常故障,QQ产品团队已经作了修复,故障会影响少量用户,受影响的资料会回档处理。...

佚名 2012-03-15 评论: 29 标签: QQ技巧   QQ系列软件