上一页 1 ··· 4 5 6 7 8 9 10 11 下一页
摘要: 在UNP卷一第三版的第8章8.9小节中说到:如果udp服务器没有启动,udp客户端在使用sendto发送一行文本后,将会等待一个永远也不会出现的应答从而阻塞在recvfrom调用上。 由于服务器端不存在,那么客户端将得到ICMP差错报文,但是这个差错却不返回给UDP,因为recvfrom仅能返回er 阅读全文
posted @ 2017-04-06 17:41 impluse 阅读(482) 评论(0) 推荐(0)
摘要: select函数 阅读全文
posted @ 2017-03-20 15:19 impluse 阅读(437) 评论(0) 推荐(0)
摘要: 最近阅读UNIX网络编程第四章时,书本末尾介绍了两个函数getsockname()和getpeername(),可以用于获取服务器端和客户端的IP地址与端口,原本很简单的两个函数,过一眼即明白函数的用法,但在实际编程测试中,却出现了一个让人意外的结果,如下图所示: 这两个函数在第一个客户连接时解析出 阅读全文
posted @ 2017-03-13 22:47 impluse 阅读(7139) 评论(3) 推荐(2)
摘要: 所有操作系统都为运行在它之上的程序提供各种服务,典型的服务包括:执行新程序、打开文件、读写文件、分配存储空间、提供时间等。 UNIX体系结构 严格来说,操作系统是一种软件,它控制计算机硬件资源,提供程序运行环境。这种软件有个专业术语名称:内核。因为它小且位于计算机体系的核心。如下图所示: 上图中的系 阅读全文
posted @ 2017-02-16 10:28 impluse 阅读(525) 评论(0) 推荐(0)
摘要: 1.1 按1.9节未尾的步骤找出你自己的网络拓扑的信息。 1.2 获取本书示例的源代码(见前言),编译并测试图1-5所示的TCP时间获取客户程序。运行这个程序若干次,每次以不同IP地址作为命令行参数。 1.3 把图1-5中的socket的第一参数改为9999。编译并运行这个程序。结果如何?找出对应于 阅读全文
posted @ 2017-02-10 11:30 impluse 阅读(489) 评论(0) 推荐(0)
摘要: 。 阅读全文
posted @ 2017-02-07 19:39 impluse 阅读(309) 评论(0) 推荐(0)
摘要: 本章介绍系统编程的基础概念和一些后续章节用到的函数及头文件,并说明了可移植性问题。 系统调用是受控的内核入口,通过系统调用,进程可以请求内核以自己的名义去执行某些动作,比如创建子进程,执行I/O操作,进行进程间的通信等。 系统调用与C语言的函数调用类似。但是系统调用的过程比C语言函数调用复杂,开销也 阅读全文
posted @ 2017-01-18 15:47 impluse 阅读(2665) 评论(17) 推荐(1)
摘要: 本章预热与后续系统编程有关的概念。 术语“操作系统”通常包含2种含义:一是指完整的软件包,包括管理计算机资源的核心组件,已经附带的标准软件;二是独指管理硬件的内核。 内核具有诸多概功能,包括: 进程管理 内存管理 文件系统支持 设备管理 在内核的管理下,操作系统会给每个用户营造一种抽象:虚拟化,即使 阅读全文
posted @ 2017-01-15 13:44 impluse 阅读(373) 评论(0) 推荐(0)
摘要: Unix的开发不受控于某一个厂商或者组织,是由诸多商业和非商业团体共同贡献进行演化的。这导致两个结果:一是Unix集多种特性于一身,二是由于参与者众多,随着时间推移,Unix实现方式逐渐趋于分裂。 由于第二个结果导致的发展就是:大家要求统一标准。类似秦王扫六合,统一文字和货币。 Unix出现之后很快 阅读全文
posted @ 2017-01-13 11:04 impluse 阅读(400) 评论(0) 推荐(0)
摘要: C++是一种通用型语言,其设计者希望它能处理各种各样的问题,因此除了一些能适用于所有问题的语言特性,还有一些适用于特定问题的特性。 控制内存分配 某些程序对内存分配有着特殊的需求,它们不适合使用标准的内存管理机制。它们需要自定义内存分配细节,比如使用new将对象放在特定的内存空间中,为了实现这一目的 阅读全文
posted @ 2016-10-25 23:06 impluse 阅读(239) 评论(0) 推荐(0)
上一页 1 ··· 4 5 6 7 8 9 10 11 下一页