系统程序设计之多进程服务器,多进程环境下UNIX操作系统的程序设计技术的研究.pdf...

多进程环境下UNIX操作系统的程序设计技术的研究

第23卷 2007

哈尔滨师范大学自然科学学报 V01.23,No.3

NATURALSCIENCES OFHARBINNORMALUNIVERSITY

第3期 JOURNAL

多进程环境下UNIX操作系统

的程序设计技术的研究

杨茹 孔宪军

(黑龙江工程学院)

【摘要】 本文通过UNIX实现多任务的分析,指出了多进程环境下UNIX操作

系统的程序设计的具体方法,并对UNIX几个重要函数进行了分析,提供了多进程环

境下函数的应用程序.

关键词:UNIX操作系统;多进程;fork()函数;wait()函数

多任务系统采用的方式基本上不外乎两种:

Multitask—

0 引言 (1)协同式多任务(Cooperative

由于UNIX操作系统众所周知的稳定性、可ing);

靠性,用来提供各种Intemet服务的计算机运行 (2)抢占式多任务(PreemptiveMultitasking);

的操作系统占很大比例的是UNIX及UNIX类操UNIX都是抢占式系统.

作系统.目前比较常见的运行在PC机上的UNIX

UNIX2

类操作系统有:BSDUNIX、Solarisx86、SCO UNIX多进程的特点

等. 在传统的多任务系统中,“进程”是一个很重

要的概念,在系统中进程是程序执行的实体,进程

1 UNIX多任务的实现 具有结构特征,它由正文(部分程序)、数据以及

多任务是操作系统的重要性能之一.多任务 堆栈等数据结构组成.当一个进程需要由另一个

即在同一时间内运行多个应用程序,UNIX多任实体执行某项任务时,该进程就派生(fork)一个

务是指系统可以同时运行多个进程.多任务是相 子进程,让子进程去进行处理.在多任务操作系统

对于操作系统而言,指的是同一时间执行多个程 内核调度下,系统中许多进程在并发执行.每个进

序的能力,但是实际上在只有一个CPU的条件下 程按自己的一系列指令严格执行,各进程之间的

不可能同时执行两个以上的程序.CPU在程序之 指令空间是独立的,不能跳转到其它的进程,它只

间做高速的切换,使得所有的程序在很短的时间 会读写自己的数据与堆栈,不能去读写其它进程

之内可以得到更小的CPU时间,这样从用户的角 的数据和堆栈.进程通过系统调用与其它进程和

度来看就好像是同时在执行多个程序.进程就是 外界通信.

应用程序的运行过程.每个进程都有自己私有的

虚拟地址空间. 3 UNIX多进程下的网络编程的方

收稿日期:2006—11—13

万方数据

68 哈尔滨师范大学自然科学学报 2007年

法 {

UNIX系统中派生新进程的唯一的方法是调

用fork()函数.该函数的原型如下所示: 使用的监听插口描述符术/

#include · /水通过connfd读

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值