上一页 1 ··· 25 26 27 28 29 30 31 32 33 ··· 37 下一页

2019年3月6日

摘要: 一、TCP拆链发起方经历time_wait状态以前只是注意TCP连接建立时经历的经典的“三次握手”,而对于连接的关闭关注较少,最近看了一下关闭的流程,比建立更为复杂。这个其实也不值得大惊小怪,因为free往往要比malloc复杂,因为free可能要处理释放块的合并。其中比较特殊的有一个time_wa 阅读全文
posted @ 2019-03-06 21:38 tsecer 阅读(477) 评论(0) 推荐(0)
摘要: 一、listen调用之backlog参数这个系统调用中的第一个参数就是侦听的"父套接口",就好像进程fork时候的"父进程"一样,这个参数是必须的,我想大家应该都没有什么意见。但是后面还有一个容易被人们忽略的参数就是backlog,这个单词不是很常见,所以我第一看到它的时候是不明白它的意义和作用的, 阅读全文
posted @ 2019-03-06 21:37 tsecer 阅读(523) 评论(0) 推荐(0)
摘要: 一、telnet客户端窗口粗暴关闭一般很多共享式系统都会启动telnet服务,特别是在嵌入式系统中,通常除了串口就是telnet来和单板交互了。典型的场景是一个用户可能通过后台的windows或者linux系统的telnet客户端来telnet连接到服务器上,然后执行操作。在理想情况下,这是一个友好 阅读全文
posted @ 2019-03-06 21:36 tsecer 阅读(403) 评论(0) 推荐(0)
摘要: 一、epoll实现原理及回调机制epoll是对select系统调用的改善,适用于同时关注文件比较多的时候的一个中优化方法,例如一个具有大量连接的系统。那么select的缺点在哪里呢?当select被唤醒的时候,它并不知道是被哪个或者哪些文件唤醒的,所以它要对位图中所有的文件进行遍历查询(调用该文件的 阅读全文
posted @ 2019-03-06 21:35 tsecer 阅读(719) 评论(0) 推荐(0)
摘要: 一、clone调用这里选择clone作为例子来描述这个问题,是因为它的确有比较明显的特征,这个特征就是它的实现比较复杂。首先,用户态的clone并不和内核的sys_clone直接对应,而其它的大部分用户态API和内核的sys_XXX接口的参数是一一对应的,例如select、open等。在glibc中 阅读全文
posted @ 2019-03-06 21:34 tsecer 阅读(1714) 评论(0) 推荐(0)
摘要: 一、共享内存及传统sys v IPC机制这个机制在SYS V系统中最早引入,是为了提高进程间通讯效率的一种新的机制,不同的进程可以通过不同的逻辑地址来操作相同的物理地址,这样相当于在地址空间隔离的基础上大家建立DMZ(非军事化区),不同的进程在这里毫不戒备,大家坦诚交流,直接操作内存,这样一个进程的 阅读全文
posted @ 2019-03-06 21:33 tsecer 阅读(1149) 评论(0) 推荐(0)
摘要: 一、如何看到sysV IPC shm文件名1、file_system_type.get_sb修改正如上篇所说,在用户态无法看到可shm文件的名称,不同的挂载点使用不同的dentry,而对于tmpfs文件,它的readdir的系统实现就是通过dcache_readdir函数来实现的,但是这个dentr 阅读全文
posted @ 2019-03-06 21:33 tsecer 阅读(1171) 评论(0) 推荐(0)
摘要: 一、goto情节goto或许相当于白垩纪时期的恐龙,曾经横行于整个地球,但是它的命运和和恐龙一样,最后逐渐绝迹。Dijstra老师第一个对goto拍案而起,痛陈该指令的危害,正如我们现在看有些代码的感受:写代码的人爽了,维护的人哭了。曾经抓住BASIC语言的尾巴,见到过早期的BASIC语言写的程序, 阅读全文
posted @ 2019-03-06 21:32 tsecer 阅读(173) 评论(0) 推荐(0)
摘要: 一、任务退出时文件关闭大多数时候,程序的执行就像人生一样,并不是一帆风顺,可能刚才还在运行的不亦乐乎,跑的CPU直冒青烟,但是一会有人发个信号过来就把进程杀死了。就像《让子弹飞》里师爷说的:“刚才还在吃着火锅,唱着小曲,突然就被麻匪劫了”。这样程序有很多事情是来得及完成的,例如我们最为关心的就是程序 阅读全文
posted @ 2019-03-06 21:31 tsecer 阅读(619) 评论(0) 推荐(0)
摘要: 一、gcc对main之前初始化的支持对于变量的初始化,gcc提供了两个相关功能,一个是#pragma init(xxx),另一个是通过__attribute__((constructor))声明的函数。虽然说#pragma这个属性只在soloris系统中有用,但是对于我们研究其实现原理还是很有帮助的 阅读全文
posted @ 2019-03-06 21:30 tsecer 阅读(1348) 评论(0) 推荐(0)
上一页 1 ··· 25 26 27 28 29 30 31 32 33 ··· 37 下一页

导航