作为一个新手,只能说,多学多看!
发布时间:2015-04-22 09:56:31
mprotect: 设置内存访问权限mmap 的第三个参数指定对内存区域的保护,由标记读、写、执行权限的 PROT_READ、PROT_WRITE 和 PROT_EXEC 按位与操作获得,或者是限制没有访问权限的 PROT_NONE。如果程序尝试在不允许这些权限的本地内存上操作,它将被 SIGSEGV 信号(Segmentation fault,段错误).........【阅读全文】
发布时间:2015-04-22 09:28:44
strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通 过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执行消耗的时间。输出参.........【阅读全文】
发布时间:2015-04-17 16:30:46
连接请求块(request_sock)之于TCP三次握手,就如同网络数据包(sk_buff)之于网络协议栈,都是核心的数据结构。内核版本:3.6Author:zhangskd @ csdn blog 存储队列 连接请求块的存储队列:包括全连接队列、半连接队列。[java] view plaincopy/** .........【阅读全文】
发布时间:2015-04-17 16:30:34
本文主要分析:在收到客户端的SYN包时,服务器端是如何解析它所携带的TCP选项,并结合本端情况决定是否予以支持。内核版本:3.6Author:zhangskd @ csdn blog 概述 收到客户端的SYN包时,需要全面的解析它携带的TCP选项,这样我们就知道客户端支持哪些选项,如果本端也支持,那么.........【阅读全文】
发布时间:2015-04-17 16:30:19
本文主要分析:服务器端接收到SYN包时的处理路径。内核版本:3.6Author:zhangskd @ csdn blog 接收入口 1. 状态为ESTABLISHED时,用tcp_rcv_established()接收处理。2. 状态为LISTEN时,说明这个sock处于监听状态,用于被动打开的接收处理,包括SYN和ACK。3. 当状态不为ESTAB.........【阅读全文】