Linux
文章平均质量分 92
rainbowchou
IT從業者
展开
-
Linux线程简述
线程概述与进程(process)类似,线程(thread)是允许应用程序并发执行任务多个任务的一种机制。一个进程中可以包含多个线程。重点是 同一程序中的所有线程都会执行相同程序,它们共享同一份全局内存区域,其中包括了初始化数据段,未初始化数据段,以及堆内存段。可以这么说,传统UNIX进程只是多线程程序的一个特例,在一个进程中只有一个线程。线程的优点在说明线程的优点之前,先说说进程的缺点,毕竟一种新事原创 2017-10-07 18:16:45 · 303 阅读 · 0 评论 -
TCP/IP 主体知识点概述(三)
接上文 TCP的报文段格式: TCP的伪首部 这部分可以结合udp的伪首部来看,udp的原理来源于此 接下来介绍伪首部 为什么需要 尽管说,伪首部这个概念在现在看来某些方面有些过时,但是它确实提供了更好的可靠性保障,起到锦上添花的作用 MTU与MSS 滑动窗口进一步解释 滑动发送窗口 滑动接收窗口 TCP的超时 重传 重传队列 TCP中一个很重要的问题 相邻段的重传如何保证 以下这...原创 2019-06-11 21:15:18 · 162 阅读 · 0 评论 -
TCP/IP 主体知识点概述(二)
接上文 TCP滑动窗口的推导: 最简单的不可靠协议过程 带有定时器和重传的基本可靠协议 TCP滑动窗口基本属性: 滑动窗口图示: TCP的抽象业务模块: TCP的建立 以及有限状态机相关: TCP的三次握手: 网上很多讨论这个东西,其实一点也不玄乎,就是将原本独立发送的syn和ack合并在一条发送 以上过程注意与下面的流程区分开来 TCP的初始序列号相关问题: 以上说明的图...原创 2019-06-11 17:34:50 · 229 阅读 · 0 评论 -
TCP/IP 主体知识点概述(一)
最近在看一本书 TCP/IP指南 相对于 那本经典 TCP/IP详解 卷1 这本书语言比较生动,容易理解。在我看来,就传授知识点这一点上 这本是明显好于 TCP/IP详解 卷1的。TCP/IP详解 卷1更适合于当作工作需要的时候,当成手册来查。 我更关注TCP/UDP相关的章节,也针对自己觉得有用的地方进行了截图,一直放在有道云笔记里,发现还不如分享出来,随时可以看看,我的截图任何一张图都可以当作...原创 2019-06-11 15:25:19 · 218 阅读 · 0 评论 -
[即时问题解决]捕获Android Native Crash
Android的Crash 问题分为Java 的Runtime Crash 和使用Jni而导致的Native 代码Crash。Java Runtime Crash是非常容易定位的,使用 : adb logcat > $path 在其中就可以很容易地看出Java Crash的问题代码位置。 然而,Native Crash 则没有那么容易定位,首先 一般relese版本的动态链接So库都是原创 2018-01-15 21:50:32 · 3207 阅读 · 0 评论 -
设计一个有限状态机及其思路
# 前言我之前一直觉得状态机是一个比较难理解的概念。所以遇到相关的问题都会觉得自己理解得不是很透彻,上周一个同事在给我分析问题的时候,无意间就谈到了状态机的流程,在分析问题的时候,没想那么多,感觉很顺畅的感觉,后知后觉发现原来这就是状态机了!我对于状态机原理什么的不懂,只从自己的实践的角度来分析下怎么去设计一个状态机,以及是怎么一个流程。# 有限状态机在说明流程之前,我觉得先说说为什么需要状态机,同原创 2017-12-02 12:55:20 · 8798 阅读 · 0 评论 -
Linux共享库概述
Linux共享库概述共享库是一种将库函数打包成一个单元使之能够在运行时被多个进程共享的技术。这种技术能够节省磁盘空间和RAM。在继续阐述共享库之前,先来说说静态库,它是比共享库更早的存在。静态库也称为归档文件,它的作用就是将一组经常被用到的目标文件组织进单个库文件,这样以来,就可以使用它来构建多个可执行程序,并且在构建各个应用程序的时候无需重新编译原来的源代码。从以上的描述中,可以看出,静态库必须和原创 2017-10-12 22:17:25 · 2750 阅读 · 0 评论 -
Linux进程简述
关于Linux进程相关的几个内容 Linux进程的创建 对应于函数:fork() Linux进程的退出,结束 对应于函数:exit() Linux进程的执行 对应于函数:execve() 对于进程的创建,系统调用fork()允许一个进程(父进程)创建一个新进程(子进程)。新的进程几乎就等于父进程的翻版,子进程获得了父进程的栈,数据段,堆和执行文本段的拷贝。对于进程的终止,则是使用exit(stat原创 2017-10-06 03:19:30 · 340 阅读 · 0 评论 -
Linux信号简述
什么是信号?信号在Linux中是发生某种事件的通知机制,它既可以由内核发送给用户进程,也可以又另一用户进程发送给进程。每一个信号都有其唯一的编号以及目的。信号的传递信号传递一般来说都是异步行为,这就意味着信号的中断进程执行的位置是不可预测的。当然,同样也有同步的信号(硬件信号),既然是同步,那么这个信号就可以在某一个时间点是可以预期的重现信号的传递。对于信号的处理信号的默认处理方式一般是: 忽略信号原创 2017-10-06 01:26:42 · 396 阅读 · 0 评论 -
TCP/IP 主体知识点概述(四)
接上文 讨论非邻近段重传的解决方案 也就是说 利用一个比特位来标记选择性确认,为了保证可靠性,tcp会重传确认之后的所有段,但是选择性确认的段不用重传 重传定时器的时间讨论 这个问题为什么值得讨论呢?原因如下 动态重传 为什么要进行tcp的流量控制?简单点说就是网络传输与计算机本地进程处理速度不对等 流量不进行控制所导致数据丢失 窗口关闭 窗口糊涂综合症 出现窗口关闭的本质...原创 2019-06-11 21:47:57 · 170 阅读 · 0 评论