摘要:
1、下载Ot安装包 Qt5.30的下载地址如下,在网页中打开找到需要的资源,下载.run格式的安装软件。 http://download.qt.io/archive/qt/5.3/5.3.0/qt-opensource-linux-x64-5.3.0.run.mirrorlist 2、安装Qt 如果 阅读全文
摘要:
LinuxC编程的学习已经告一段落,这段开始学C++。C++是面向对象编程,C语言是面向过程编程。因此学习C++的第一件事就是要弄明白什么是面向过程编程,什么是面向对象编程。 之前学习的C语言是面向过程编程,回想一下C语言编程的过程。主函数,定义变量,调用函数然后实现。面向过程编程是一种非常具体,要 阅读全文
摘要:
Web服务器端程序主要是两个部分,一部分是主函数,一部门是命令处理函数。命令处理函数比较好理解就是针对客户端不同的命令进行处理,与客户端进行通信。主函数也有两个主要的功能,第一是要对程序进行初始化,其中包括创建监听套接字并且绑定到地址和端口上,第二是创建子进程处理对应的连接请求。 1、主函数 Web 阅读全文
摘要:
1、 客户端程序--主函数 客户端主程序的流程图如下: 主程序主要是分析输入的命令,根据不同命令调用不同的函数处理或者进行出错处理,函数代码如下: 2、客户端程序--命令拆分 命令拆分程序可以根据之前的程序设计来进行编写,先判断是什么命令,再根据命令类型的不同调用不同的函数,将命令中的参数分离出来作 阅读全文
摘要:
总体概括来说就是设计一个Web服务器的流程,将执行流程分为简单的步骤,每个步骤作为一个模块来实现。 1、整体设计 服务器程序发送文件给客户端或者从客户端接收文件,每次通信只能做一次文件传输,传输完毕后准备处理下一次通信。客户端程序,接收或者发送一个文件后就可以退出。因此,服务器短程序是一个死循环,处 阅读全文
摘要:
前边提到了多路I/O的方法,这一章屏蔽信号的多路选择与之前的多路I/O一致,只是增加了屏蔽信号的作用。多路选择I/O中我们使用的是select函数,屏蔽信号的多路选择I/O使用的是pselect函数,与之前的函数相比,增加了一个参数可以用来屏蔽信号。具体函数如下所示: int pselect(int 阅读全文
摘要:
HTTP协议用于客户端和服务器之间的通信,请求访问的一段是客户端,提供资源响应的一段是服务器端。 HTTP通信是采用请求应答的方式来进行的,客户端发出请求,服务器响应。如果没有客户端的请求,服务器端是不进行任何响应的。HTTP通信机制是在一次完整的HTTP通信过程中,Web浏览器与Web服务器之间将 阅读全文
摘要:
多路选择I/O提供另一种处理I/O的方法,相比于传统的I/O方法,这种方法更好,更具有效率。多路选择是一种充分利用系统时间的典型。 1、多路选择I/O的概念 当用户需要从网络设备上读数据时,会发生的读操作一般分为两步。 (1)等待数据准备好,等待数据的到达,并且将其复制到内核的缓冲区,该缓冲区在系统 阅读全文
摘要:
从之前的程序中也可以总结出来一般面向连接的服务器程序的代码框架,一般的模型如下所示: 这种面向连接的服务器有一个很大的弊端:服务器一次只能处理一个客户端的请求,只有在这个客户的所有请求都满足之后,服务器才能继续处理后面的请求。如果有一个客户端占用服务器,后边的客户机都不能工作。这样的模型效率太低,不 阅读全文
摘要:
面向连接的网络应用程序分为客户端和服务器端。服务器端的执行流程一般为4步,客户端程序相对简单,一般需要两个步骤。 服务器端执行流程4步如下: (1)调用socket函数,建立一个套接字,该套接字用于接下来的网络通信。 (2)调用bind函数,将该套接字绑定到一个地址,并制定一个端口号, (3)调用l 阅读全文