易截截图软件、单文件、免安装、纯绿色、仅160KB

linux 网络编程 服务器模型

 学习过《软件工程》吧.软件工程可是每一个程序员"必修"的课程啊.如果你没有学习过, 建议你去看一看. 在这一章里面,我们一起来从软件工程的角度学习网络编程的思想.在我们写程序之前, 我们都应该从软件工程的角度规划好我们的软件,这样我们开发软件的效率才会高. 在网络程序里面,一般的来说都是许多客户机对应一个服务器.为了处理客户机的请求, 对服务端的程序就提出了特殊的要求.我们学习一下目前最常用的服务器模型. 
循环服务器:循环服务器在同一个时刻只可以响应一个客户端的请求 
并发服务器:并发服务器在同一个时刻可以响应多个客户端的请求 
9.1 循环服务器:UDP服务器 
UDP循环服务器的实现非常简单:UDP服务器每次从套接字上读取一个客户端的请求,处理, 然后将结果返回给客户机. 
可以用下面的算法来实现. 
   socket(...);
   bind(...);
   while(1)
    {
         recvfrom(...);
         process(...);
         sendto(...);
   }
因为UDP是非面向连接的,没有一个客户端可以老是占住服务端. 只要处理过程不是死循环, 服务器对于每一个客户机的请求总是能够满足. 
9.2 循环服务器:TCP服务器 
TCP循环服务器的实现也不难:TCP服务器接受一个客户端的连接,然后处理,完成了这个客户的所有请求后,断开连接. 
算法如下: 
        socket(...);
        bind(...);
        listen(...);
        while(1)
        {
                accept(...);
                while(1)
             &


相关文档:

Linux启动过程详解

本原创文章属于《Linux大棚》博客,博客地址为http://roclinux.cn。文章作者为rocrocket。
启动第一步--加载BIOS
当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它。这是因为BIOS中包含了CPU的相关信息、设备启动顺序信息、硬盘信息、内存信息、时钟信息、PnP特 ......

linux 小技巧

linux 小技巧
前言:因为用Linux的时间越来越长,所需要做的事也越来越多,效率成了我必需突破的瓶颈。在此总结一下这段时间用过的一些好的Linux技巧。以后时常补充这样自己要用的时候就很方便了。 Author:Ajian[文本处理]1、 ...
前言:因为用Linux的时间越来越长,所需要做的事也越来越多,效率成了我必需突破的瓶颈。 ......

Linux基于事件驱动的程序框架(转载)

[转]Linux 2.6 内核Epoll用法举例说明
epoll用到的所有函数都是在头文件sys/epoll.h中声明的,下面简要说明所用到的数据结构和函数:
所用到的数据结构:
 
typedef union epoll_data {
void *ptr;
int fd;
__uint32_t u32;
__uint64_t u64; ......

Linux 时间同步配置


一. 使用 Network Time Protocol (NTP) 服务器
1.1 服务器可链接外网时    
# crontab -e    
加入一行:    
*/1 * * * * ntpdate 210.72.145.44     ......

关于linux进程管理

 
复习一下,免得忘记。
显示进程属性- ps 命令
ps 命令:该命令是最基本同时也是非常强大的进程查看命令,用于报告进程标识、用户、CPU 时间消耗以及其他属性。利用它可以确定有哪些进程正在运行及运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等。ps 命令可以监控后台进程的工作情况,因 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号