Linux 高性能服务器编程:网络基础编程一 5
socket地址API 字节序 现代CPU的累加器一次都能装载(至少)4个字节(32位机器),即一个整数。 这4个字节在内存中排列的顺序将影响它被累加器装载成的整数的值,这就是字节序问题。 字节序分为大端字节序和小端字节序。 大端字节序是指整数的高位字节存储在内存的低地址处,低位...
socket地址API 字节序 现代CPU的累加器一次都能装载(至少)4个字节(32位机器),即一个整数。 这4个字节在内存中排列的顺序将影响它被累加器装载成的整数的值,这就是字节序问题。 字节序分为大端字节序和小端字节序。 大端字节序是指整数的高位字节存储在内存的低地址处,低位...
概述 Linux服务器程序必须处理三类事件: I/O事件 信号 定时事件 在处理这三类事件时通常需要考虑三个问题: 统一事件源 可移植性 对并发编程的支持 I/O框架概述 I/O框架库以库函数的形式,封装了较为底层的系统调用,给应用程序提供了一组方便使用的接口 这些库函数往往比程...
信号 概述 /usr/include/ 信号是进程间通信(IPC)的一种简单机制 信号提供了一种向进程传递通知和信息的方式,以便进程可以相应地做出反应 信号类型 SIGINT:当用户按下CTRL-C时,通常发送这个信号来中断进程 SIGTERM:用于正常终止进程,是kill命令的...
内核空间和用户空间 对 32 位操作系统而言,它的寻址空间(虚拟地址空间,或叫线性地址空间)为 4G(2的32次方)。也就是说一个进程的最大地址空间为 4G。操作系统的核心是内核(kernel),它独立于普通的应用程序,可以访问受保护的内存空间,也有访问底层硬件设备的所有权限。为...
网络信息API gethostbyname和gethostbyaddr gethostbyname根据主机名称获取主机的完整信息。这个函数是通常先在本地的/etc/hosts.conf配置文件中查找主机,如果没有找到,再去访问DNS服务器。 gethostbyaddr根据IP地址...
cef结构简介 CMakeLists.txt Debug cef的debug构建,以及平台需要的其他库 include cef头文件 libcef_dll libcef_dll静态库的源代码, 用到cef的C++API的,都必须链接这个库 Release cef的release构...
信号系统及作用 系统信号是系统与进程之间交流的语法,系统中所有的信号如下(可用kill -l列出): 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIG...
概述 TCP是一种面向连接的协议,提供了可靠、有序和错误检测机制的字节流服务 与无连接的UDP协议相比,TCP强调数据完整性和可靠性 特点 可靠性 TCP确保所有数据包按顺序到达,如果丢失或出错,它们将被重新传输 面向连接 在数据交换之前,通信双方必须建立连接 全双工 一旦连接建...
pipe pipe用于创建一个管道,以实现进程间通信。 pipe函数的参数是一个包含两个int的数组指针。 该函数成功时返回0,并将一对打开的文件描述符值填入其参数指向的数组。 如果失败,返回-1并设置errno。 通过pipe创建的这两个文件描述符fd[0]和fd[1]分别构成...
gcc/g++介绍 概述 gcc和g++都是GNU(组织)的一个编译器 区别 后缀为.c的文件gcc把它当做c程序,g++当做c++程序。 后缀为c++的两者都当做c++程序。 其他 对于cpp程序,无论gcc或者是g++编译阶段都是相同的 都是用的gcc进行编译 但是在链接阶段...
搜索当前标签