自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Windeal

Linux、网络协议栈、网络通信

  • 博客(18)
  • 资源 (25)
  • 收藏
  • 关注

原创 APUE学习笔记——8.1-8.4 进程基础

1 进程id是唯一的。(不会有进程id一样的两个进程)2进程id是可复用的,一个进程销毁后,它的id号可以被新的进程使用。但是Unix采用了延迟复用的算法,也就是进程 销毁后它的id不会立即被使用。3 进程id为0的是调度进程。这是系统进程,是内核的一部分。4 进程id为1的是init进程。init进程读取初始化文件/etc/rc*files 或者/etc/inittab,以及在/etc/init.d中的文件,使系统处于 某种状态。 init进程是用户进程,而不是系统进程。 我们

2014-08-29 13:57:20 1325

原创 APUE学习笔记——8.11 实际用户ID、有效用户ID、设置用户ID

首先,给出本文要使用的例子,对一个数组a进行升序的插入排序int a[10] = {1,5,3,9,0,2,7,4,8,6};算法的C语言描述void inserSort(int a[], int length){ int i = 1; for(i = 1; i < length; i++) {

2014-08-29 09:58:57 1260

原创 APUE学习笔记——7main()函数启动与退出

程序的启动与退出过程先上图,了解进程运行的机制。    内核首先调用exec,运行C启动进程,C启动进程会调用main()函数。    其他所有函数都是由main函数直接或间接调用的。    从Figure7.2可以看出,内核与用户进程的交互,直接使用的只有三个函数:exec、_exit、_Exit    exec是用来启动C启动历程的,关于用户

2014-08-28 15:55:21 1188

原创 APUE学习笔记——6.10 时间与时间例程 time_t

Unix提供的最基本的时间服务室日历时间(纪元时间),也就是计算1970年1月1日0时0分0秒到当前的秒数。该秒数用time_t表示。typedef long time_t; /* 时间值time_t 为长整型的别名*/Unix/Linux提供了微秒级别获取和设置时间的函数gettimeofday()与settimeofday(),但根据man手册的描述,这两个函数已经过时,此处不做介绍。仅列出原型(这两个函数编译需要glibc的支持)夏时制,夏时令(Daylight Saving Time

2014-08-28 14:50:01 1651

原创 APUE学习笔记——6 系统数据文件与信息

用户口令:/etc/passwd文件 getpwuid函数由ls(1)程序使用,它将i节点中的数值用户id映射为用户登录名。在键入登录名时,getpwnam函数由login(1)程序使用。阴影口令/etc/shadow 仅有login和password等少数几个程序需要用到加密口令的存取。阴影口令使用结构体:(该结构体中只有用户名和加密口令是必须的,其他的只是用户控制账户时间信息)组文件/etc/group

2014-08-28 10:22:20 976

原创 APUE学习笔记——10 信号

信号的基本概念 用sigaction代替signal 可靠信号与不可靠信号 现在大部分Unix系系统如Linux都已经实现可靠信号。 SIGKILL和SIGSTOP信号既不能被忽略也不能被捕捉,因为这两个信号向内核或者超级用户提供了终止或停止信号的可靠方法。

2014-08-27 14:07:40 1441

原创 APUE学习笔记——5.5~5.7数据流的打开与读写

1.open#include FILE *fopen(const char *restrict pathname,const char *restrict type)FILE *freopen(const char *restrict pathname,const char *restrict type,FILE *restrict fp);FILE *fdopen(int fd,co

2014-08-25 14:49:23 1163

原创 APUE学习笔记——5缓冲Buffering、流、文件对象

缓冲的几个基本概念 缓冲的作用:减少系统read和write的次数。全缓冲 系统标准I/O缓冲区被写满时才进行真正的I/O操作。 磁盘文件一般使用全缓冲 全缓冲使用malloc来分配缓冲区行缓冲 系统遇到换行符时进行真正的I/O操作。 Terminal一般使用行缓冲 行缓冲有固定的size,当这个固定size的行缓冲区被填满时,不管有没有遇到换行符都开始进行一次I/O操作。 行缓冲在

2014-08-25 10:41:36 1470

原创 APUE学习笔记——4.2结构体 struct stat 及其相关函数介绍

以下不少内容来自man手册结构体struct stat        结构体struct stat用于保存文件相关的所有信息。        struct stat的基本成员如下所示 struct stat { dev_t st_dev; // 文件所在设备的设备id,可以分解为主设备号和此设备号

2014-08-21 11:28:58 1082

原创 APUE学习笔记——3.文件共享与fcntl介绍

基本概念内核使用3个数据结构描述一个打开的文件:进程表、文件表、V节点表首先了解3种数据结构的概念    1 进程表        每一个进程有一个进程表。进程表里是一组打开的文件描述符,如标准输入0,标准输出1,标准错误2...    2 文件表        进程打开一个文件时,内核就为该文件创建一个文件表。

2014-08-20 16:58:44 1985

转载 GNU C 、ANSI C、标准C、标准c++区别和联系

转载自GNU计划,又称革奴计划,是由Richard Stallman在1983年9月27日公开发起的。它的目标是创建一套完全自由的操作系统。它在编写linux的时候自己制作了一个标准成为 GNU C标准。ANSI 美国国家标准协会,它对C做的标准ANSI C标准后来被国际标准协会接收成为 标准C 所以 ANSI C 和标准C是一个概念总体来说现在linux也支持标准C,

2014-08-20 09:02:11 1035

转载 应该知道的Linux技巧

这篇文章来源于Quroa的一个问答《What are some time-saving tips that every Linux user should know?》—— Linux用户有哪些应该知道的提高效率的技巧。我觉得挺好的,总结得比较好,把其转过来,并加了一些自己的理解。 首先,我想告诉大家,在Unix/Linux下,最有效率技巧的不是操作图形界面,而是命令行操作,因为命令行意味着自

2014-08-19 12:13:39 758

原创 TCP 长连接与短连接的区别与实现

TCP是一种面向连接的传输协议,在进行通讯时,通讯双方需要建立连接。TCP需要3次握手建立连接、4次握手释放连接。这些握手的过程是通过发包来实现的,需要消耗一些资源。那么问题来了,我们如果每次进行一次业务通信就建立和释放一次连接会不会太浪费资源了。为了解决这个问题,长连接出现了。短连接:基础语义上的连接,没进行一次业务通信就建立一次连接,通信完毕后就立即释放连接。长连接:第一次进行业务

2014-08-15 12:27:32 2031

转载 Android开发工具配置大全

程序员生存定律这系列的目录在这里:程序员生存定律--目录喜欢从头瞄的,可以移步。-------------------------------------------------------------------------------1. “博”与“专”上的迷失假设说一个人的学习已经聚焦,并且学习的内容和自己实际参与的项目也相吻合,那么是不是就没有问题了?很不幸,答

2014-08-14 23:24:06 907

原创 Ubuntu下sh *.sh使用==操作符执行报错

ubuntu默认的sh是连接到dash,而我们写shell脚本时使用的时bash。bash和dash在一些方面是不兼容的。因此执行同一个脚本,两者结果不一样,可能用./*sh可以执行,而sh *.sh报错。

2014-08-14 17:40:06 2162

原创 sed和awk简介

什么是sed和awk sed和awk是Linux环境下数据的处理工具,可以完成对数据的增删改查的功能。 sed处理时是以行尾单位的,awk处理数据时以字段为单位。

2014-08-14 10:00:10 1445

原创 diff和patch 打补丁

在Linux环境下,有两个工具用来给project打补丁,即diff和patchdiff        diff具有比较功能。可以使用man命令查看其使用方法。NAME       diff - compare files line by lineSYNOPSIS       diff [OPTION]... FILES常用选项: 

2014-08-12 23:05:27 2729

原创 NAT&Port Forwarding&Port Triggering

NAT    Nat,网络地址转换协议。主要功能是实现局域网内的本地主机与外网通信。    在连接外网时,内部Ip地址需要转换为网关(一般为路由器Ip地址)(端口号也需要相应的转换)    如:QQ程序    在一个局域网中,路由器(网关)WAN侧ip为200.0.0.123    局域网三台计算机:计算机A 192.168.0.10,计算机B

2014-08-08 15:55:48 2692

OpenStack企业云平台架构与实践.pdf

本书结合作者亲身经历的各类OpenStack的咨询、规划和实施经验,以循序渐进的方式,从理论和工程角度,讲述了如何将OpenStack(本质上只是一堆相关的进程和服务)变成企业可靠的、托管企业各类生产环境的云平台的方方面面,让OpenStack真正变成我们身边默默无闻但又实实在在的环境的一分子。本书分为10章,分别介绍了OpenStack与云,OpenStack社区,OpenStack与AWS、VMware、虚拟化管理工具,虚拟机管理程序与典型应用,OpenStack架构与组件,OpenStack部分组件安装示例,系统定制技术,OpenStack部署,第三方工具搭建OpenStack运行环境,九州云Animbus融合架构一体机解决方案等内容。

2018-04-25

TCP-IP详解卷2-实现.pdf

CP/IP详解·卷2:实现》完整而详细地介绍了TCP/IP协议是如何实现的。书中给出了约500个图例,15000行实际操作的C代码,采用举例教学的方法帮助你掌握TCP/IP实现。《TCP/IP详解·卷2:实现》不仅说明了插口API和协议族的关系以及主机实现 与路由器实现的差别。还介绍了4.4BSD-Lite版的新的特点。《TCP/IP详解·卷2:实现》适用于希望理解TCP/IP协议如何实现的人,包括编写网络应用程序的程序员以及利用TCP/IP维护计算机网络的系统管理员。

2018-04-13

UNIX环境高级编程 中文第3版

《UNIX环境高级编程(第3版)》是被誉为UNIX编程“圣经”的Advanced Programming in the UNIX Environment一书的第3版。在本书第2版出版后的8年中,UNIX行业发生了巨大的变化,特别是影响UNIX编程接口的有关标准变化很大。本书在保持前一版风格的基础上,根据新的标准对内容进行了修订和增补,反映了新的技术发展。书中除了介绍UNIX文件和目录、标准I/O库、系统数据文件和信息、进程环境、进程控制、进程关系、信号、线程、线程控制、守护进程、各种I/O、进程间通信、网络IPC、伪终端等方面的内容,还在此基础上介绍了众多应用实例,包括如何创建数据库函数库以及如何与网络打印机通信等。此外,还在附录中给出了函数原型和部分习题的答案。   《UNIX环境高级编程(第3版)》概念清晰,阐述精辟,对于所有层次UNIX/Linux程序员都是一本不可或缺的参考书。

2018-01-15

libev-官方手册

libev是高性能事件循环/事件模型的网络库,并且包含大量新特性。 它是继lievent和Event perl module之后的一套全新网络库。它追求的目标:速度更快,bug更少,特性更多,体积更小。

2017-06-12

彻底搞定C指针 高清版

姚云飞先生的大作《彻底搞定C指针》是互联网上中文C/C++界内为数不 多的专门阐述C指针问题的优秀文献资源之一。

2014-12-26

cntlm(设置全局域代理)

解决ISA+Windows域 环境下,一些无法设置域代理的软件无法连接网络的问题

2014-09-25

H.264编码源代码(单帧,简单易用)

H.264编码源代码,就几个文件,容易看懂,可以通过调用几个函数实现一个视频帧的编解码。

2014-03-31

算法分析与设计+王晓东

本书以算法设计策略为知识单元 系统地介绍计算机算法的设计方法与分析技巧 以期为计算机科学与技术学科的学生提供广泛而坚实的计算机算法基础

2014-03-11

学生成绩管理系统

学生成绩管理系统 VC6 可运行

2011-12-29

Tab控件的使用

Tab控件的使用

2011-12-29

CMMI3 开发规范文档

CMMI3 开发规范文档

2011-12-29

MFC类库详解MSDN

中文版的MFC类库详细解析。具有索引功能。能够较快地查询MFC基础类库。方便编程开发。

2011-08-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除