网站大量收购独家精品文档,联系QQ:2885784924

linux网络编程复习题与知识点.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
linux网络编程复习题与知识点

1.3 TCP连接的建立与终止和TCP状态转换图 2MSL状态 难点:执行主动关闭的那端进入这种状态。这个端点在该状态的持续时间是2MSL(最长分节生命周期)。 存在TIME_WAIT状态有两个理由: 1.实现终止TCP全双工连接的可靠性(假设最后一个ack丢失的情况). 2.允许老的重复分节在网络中消逝. 2.4 套接字基本函数知道怎么用这些函数 套接字类型: SOCK_STREA,:流式套接字[TCP支持];SOCK_DGRAM:数据包套接字[UDP支持];SOCK_RAW:原始套接字[允许对低于传输层的协议或物理网络直接访问;收发ICMP报、常用于检测新的协议] 第三章 各个函数和参数的作用 【close()与shutdown()】 区别:(1)close将描述字的访问计数减1,仅在此计数为0时才关闭套接口。用shutdown可以激发TCP的正常连接终止程序,而不管访问计数;(2)close终止了数据传送的两个方向:读和写。由于TCP连接是全双工的,有很多时候要通知另一端已完成了数据发送,即使那一端仍有许多数据要发送也如此。Shutdown函数可以仅仅关闭连接的读、写或两个方向都关闭。 函数返回的描述符 设置套接字选项 第四章 recvfrom和sendto函数的用法 第五章 默认为子进程先执行 父进程后执行 但是有sleep函数就不一样了 进程:定义了一个计算的基本单元,可以认为是一个程序的一次运行。它是一个动态实体,是独立的任务。它拥有独立的地址空间、执行堆栈、文件描述符等 父进程监听 子进程进行通信 wait和waitpid函数的用法 僵尸进程:一个已经终止,但是其父进程尚未对其进行善后处理的进程 线程的创建函数 传递参数问题 once函数 #include pthread.h int pthread_once(pthread_once_t *once_control, void (*init_routine) (void)) 成功返回0,否则返回错误码 如果本函数中,once_control变量使用的初值为PTHREAD_ONCE_INIT,可保证init_routine()函数在本进程执行序列中仅执行一次。 一般在init_routine函数中完成一些初始化工作。 LinuxThreads使用互斥锁和条件变量保证由pthread_once()指定的函数执行且仅执行一次,而once_control则表征是否执行过。如果once_control的初值不是PTHREAD_ONCE_INIT(LinuxThreads定义为0),pthread_once()的行为就会不正常; 互斥锁 pthread_mutex_lock(pthread_mutex_t *mptr) ——返回:成功0,否则返回错误码 如果互斥锁是静态分配的,就将mptr初始化为常值PTHREAD_MUTEX_INITIALIZER。 pthread_mutex_unlock(pthread_mutex_t *mptr) 用于互斥锁解锁操作。 ——返回:成功0,否则返回错误码 线程的例子和I/O复用 第六章 要了解PPT上的各个函数,知道他们的作用 uname函数等 第9章 第13章 当客户处理多个描述字(一般是交互式输入和网络套接字),必须使用i/o复用 五个I/O模型 vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv 4个宏函数vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv FD_ZREO/将所有位设为0/、FD_CLR/将fd位设为0/、FD_SET/将fd位设为1/、FD_ISSET/检测fd位是否为1/ select函数 该函数有三种执行结果: 【永远等待下去】仅在有一个或以上描述字准备好i/o才返回,为此,我们将timeout设置为空指针。 【等待固定时间】在有一个描述字准备好时返回,但不超过由timeout参数指定的秒数和微秒数。 【根本不等待,检查描述字后立即返回,这称为轮询】这种情况下,timeout必须指向结构timeval,且定时器的值必须为0。 每次调用select前都必须对等待描述字集合完成初始化和设置工作 【Select()函数实现I/O多路复用的步骤】:vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv 清空描述符集合; 建立需要监视的描述符与描述符集合的联系; 调用select()函数; 检查所有需要监视的描述符,利用FD_ISSET宏判断是否已准备好; 对已准备好的描述符进行I/O操作。 区别:pselect函数使用结

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档