易截截图软件、单文件、免安装、纯绿色、仅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入门笔记二

 1.关机
init 0或者 halt poweroff
重新启动
init 6或者 reboot
关机的时候通知下其他用户 Shutdown
shutdown -r +5 (五分钟之后关机)
2.在Linux下可以使用长文件或目录名,需要遵循的规则
  / 禁止使用
  后缀是没有实际意义的
3.touch a  建立一个文件
4.shell命令的一般格式
  $cmd ......

linux command


< id="MediaPlayerObject" style="visibility: hidden;" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6" width="0" height="0" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701">
 1. 创建目录
     mkdir
    ......

Linux内存管理


摘要:本章首先以应用程序开发者的角度审视Linux的进程内存管理,在此基础上逐步深入到内核中讨论系统物理内存管理和内核内存的使用方法。力求从外到内、水到渠成地引导网友分析Linux的内存管理与使用。在本章最后,我们给出一个内存映射的实例,帮助网友们理解内核内存管理与用户内存管理之间的关系,希望大家最终能驾驭 ......

Linux 时间同步配置


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

linux select 异步聊天程序,比较好

什么是异步通讯?
就是通讯任意一方可以任意发送消息,有消息来到时会收到系统提示去接收消息。
这里要用到select函数。使用步骤如下:
1、设置一个集合变量,用来存放所有要判断的句柄(file descriptors:即我们建立的每个socket、用open打开的每个文件等)
2、把需要判断的句柄加入到集合里
3、设置判断时间
4、开 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号