xqn2017

导航

随笔分类 -  Linux网络编程学习

Linux网络编程学习(十二) ----- 结语
摘要:该书提前看完了,重点看了第四章和第六章,第七章以后只是大致浏览了一下,如果以后工作中涉及这一块再仔细研究一下,大概花了二十天的样子,主要了解了进程间的通信方式、socket编程以及五种I/O模式,看的过程中只是了解了基本概念,还没有实战经验,只看一遍书是不可能完全掌握的,重在了解基本概念,以后看到就 阅读全文

posted @ 2018-05-07 15:41 xqn2017 阅读(137) 评论(0) 推荐(0)

Linux网络编程学习(十一) ----- 五种I/O模式(第六章)
摘要:1、五种I/O模式是哪几个? 阻塞I/O,非阻塞I/O,I/O多路复用,信号驱动I/O(SIGIO),异步I/O 一般来讲程序进行输入操作有两个步骤,一是等待有数据可读,二是将数据从系统内核中拷贝到程序的数据集区。 对于一个套接字的数据操作,第一步就是等待数据从网络上传到本地,当数据包到达时,数据将 阅读全文

posted @ 2018-05-03 17:22 xqn2017 阅读(184) 评论(0) 推荐(0)

Linux网络编程学习(十) ----- Socket(第六章)
摘要:前言:由于第五章主要介绍了TCP和UDP协议以及两者的包头的字段以及相应的功能,这里就不介绍了,对着字段看功能就好了,后续开始学习第六章 1、Socket Socket实质上就是提供了通信的端点,每个socket都用一个半相关描述{协议,本地地址,本地端口},完整的socket描述{协议,本地地址, 阅读全文

posted @ 2018-04-25 19:57 xqn2017 阅读(188) 评论(0) 推荐(0)

Linux网络编程学习(九) ----- 消息队列(第四章)
摘要:1、System V IPC System V中引入的几种新的进程间通信方式,消息队列,信号量和共享内存,统称为System V IPC,其具体实例在内核中是以对象的形式出现的,称为IPC 对象,每个IPC对象在内核中都有一个唯一的标识符。这个标识符的唯一性在同一类IPC中成立,不同IPC的标识符可 阅读全文

posted @ 2018-04-23 17:41 xqn2017 阅读(639) 评论(0) 推荐(0)

Linux网络编程学习(八) ----- 文件和记录锁定(第四章)
摘要:1、什么是文件和记录锁定? 文件锁定的是整个文件,而记录锁定只锁定文件的一部分,文件和记录锁分为咨询式锁定和强制锁定 1)咨询式锁定 某个进程对某个文件进行了咨询式锁定,其他想访问该文件的进程将会被操作系统告知文件已经上锁,但并不阻止这些进程对锁定文件的操作,只要有对锁定文件的存取权,这些进程便可忽 阅读全文

posted @ 2018-04-23 10:32 xqn2017 阅读(228) 评论(0) 推荐(0)

Linux网络编程学习(七) ----- 有名管道(第四章)
摘要:1、什么是有名管道?为什么有了管道还需要有名管道? 有名管道是解决管道不能提供非父子进程间通信的缺陷。管道在Linux系统内部是以文件节点(inode)的形式存在,但由于其对外的不可见性(“无名”性),就无法创建新的句柄对其进行访问。而有名管道则以一种特殊的设备文件的形式存在于文件系统中,这样,有名 阅读全文

posted @ 2018-04-21 15:03 xqn2017 阅读(328) 评论(0) 推荐(0)

Linux网络编程学习(六) ----- 管道(第四章)
摘要:1、管道的定义 管道就是将一个程序的输出和另外一个程序的输入连接起来的单向通道,比如命令: ls -l|more,就建立了一个管道,获取ls -l的输出作为more的输入,数据就沿着管道从管道的左边流到了管道的右边。 实际上内核为进程建立了两个句柄f1和f2,进程通过句柄f1向管道写入数据,同时通过 阅读全文

posted @ 2018-04-21 14:40 xqn2017 阅读(285) 评论(0) 推荐(0)

Linux网络编程学习(五) ----- 信号(第四章)
摘要:1、基本概念 进程阻塞: 进程执行条件得不到满足,就自动放弃CPU资源而进入休眠状态,以等待条件满足,当条件满足时,系统就将控制权还给该进程进行未完成的操作 共享资源: 进程间协调使用的系统资源 锁定: 当某个进程使用共享资源时,可能需要防止别的进程对该资源的使用。Linux提供一些方法保证共享资源 阅读全文

posted @ 2018-04-20 15:25 xqn2017 阅读(388) 评论(0) 推荐(0)

Linux网络编程学习(四) -----守护进程的建立(第三章)
摘要:本文介绍一个例程daemon_init() 守护进程建立的主要过程 1、fork 通过fork出一个子进程,并把父进程关闭,这样子进程就成了后台进程,而且子进程从父进程那里继承了组标识符同时又拥有了自己的进程标识符,这样就保证了子进程不会是一个进程组的首进程 2、setsid setsid()创建了 阅读全文

posted @ 2018-04-20 14:51 xqn2017 阅读(143) 评论(0) 推荐(0)

Linux网络编程学习(三) ----- 进程控制实例(第三章)
摘要:本节主要介绍一个进程控制的实例,功能就是在前台或者后台接收命令并执行命令,还能处理由若干个命令组成的命令行,该程序命名为samllsh。 基本逻辑就是 setp1:取得命令行内容,用uerin函数实现,处理步骤首先显示提示符,提示符的具体内容由用户通过参数传递给函数,然后每次从键盘读取一个字符,存入 阅读全文

posted @ 2018-04-19 20:49 xqn2017 阅读(191) 评论(0) 推荐(0)

Linux网络编程学习(二) ----- 进程控制(第三章)
摘要:1、进程和程序 程序是一个可执行文件,而一个进程是一个执行中的程序实例。一个进程对应于一个程序的执行,进程是动态的,程序是静态的,多个进程可以并发执行同一个程序。比如几个用户可以同时运行一个编辑程序,每个用户对此程序的执行均作为一个单独的进程。 2、进程控制的系统调用一个进程可以启动另一个进程,进程 阅读全文

posted @ 2018-04-19 15:32 xqn2017 阅读(140) 评论(0) 推荐(0)

Linux网络编程学习(一) ----- 概论和Linux模型(第一章第二章)
摘要:1、什么是计算机网络,通信方式是什么? 计算机网络就是通过通信线路相互连接的计算机的集合,主要通过双绞线、同轴电缆、电话线或者光缆等有形传输介质通信,还有就是通过激光、微波、卫星等实现无线通信 2、WAN和LAN 广域网和局域网,局域网通常有较高的通信速率,有限的地理范围,为一个部门所有 3、TCP 阅读全文

posted @ 2018-04-19 11:54 xqn2017 阅读(170) 评论(0) 推荐(0)

Linux网络编程学习计划
摘要:由于网络编程是很重要的一块,自己这一块也比较欠缺,只知道一些皮毛,从今天开始系统学习《Linux网络编程》一书,全书分为十四个章节: 第一章 概论 P1-16 第二章 UNIX/LINUX模型 P17-20 第三章 进程控制 P22-50 第四章 进程间通信 P50-120 第五章 通信协议简介 P 阅读全文

posted @ 2018-04-19 11:08 xqn2017 阅读(500) 评论(0) 推荐(0)