精选优质文档-倾情为你奉上第6章 网络服务器的设计模式6-1 概 述第3章和第4章中讨论的是最基本的TCP服务器和UDP服务器:串行单用户服务器,本章将讨论服务多客户的网络服务器的设计模式。因为大多数网络服务器都是多进程或多线程应用,因此在讨论网络服务器的设计模式之前先介绍进程和线程的基本概念、编程接口以及程序设计方法。6-2 多进程环境下的网络编程6-2-1 进程的基本概念在传统的多任务系统中,“进程”是一个很重要的概念,在系统中进程是程序执行的实体,它由一组机器指令(也称为“正文”)、数据以及堆栈组成。当一个进程需要由另一个实体执行某项任务时,该进程就派生(fork)一个子进程,让子进程去进行处理。当一个程序按多任务组织时,在多任务操作系统核心的调度下,系统中许多进程在并发执行,这些进程是同一程序的不同体现。每个进程按自己的一系列指令严格执行,各进程之间的指令空间是独立的,不用跳转到另外的进程去,它只会读写自己的数据与堆栈,不能去读写另外进程的数据和堆栈。进程通过系统调用与其他进程和外界通信。采用多进程的方式来实现处理多任务