一般情况下,一个可执行二进制程序(更确切的说,在Linux操作系统下为一个进程单元,在UC/OSII中被称为任务)在存储(没有调入到内存运行)时拥有3个部分,分别是代码段(text)、数据段(data)和BSS段。这3个部分一起组成了该可执行程序的文件 C语言可执行代码结构 (1)代码段(text ...
分类:
编程语言 时间:
2018-01-21 17:37:31
阅读次数:
191
X86系列是指Intel从16位微处理器8086开始的整个CPU芯片系列,系列中的每种型号都保持与以前的各种型号的兼容。在x86系列中,8086和8088是16位处理器,从80386开始为32位处理器,80286则是该系列从8088到80386,是从16位到32位过渡的过程。80286虽然是16位处 ...
分类:
其他好文 时间:
2018-01-21 12:39:17
阅读次数:
431
1.函数可以调用在前声明在后 PHP虽然是脚本语言,但也是需要先编译后执行的。 在编译过程中,函数,类等长度较大的代码块会被读入到堆内存中,程序的执行代码会被读入到代码段,静态数据被读入到初始化数据段。 程序执行时,计算机逐一从代码段取出代码按顺序执行,遇到声明变量的语句,则将变量存入栈内存。 所以 ...
分类:
Web程序 时间:
2018-01-19 19:48:40
阅读次数:
271
一、协议格式 二、数据段标识 按照“标准”构造大气六参(缺臭氧)和气象五参实时采样数据,外加噪声和TSP 三、构造完整数据包 按照一、通讯包结构组成表,构造完整数据包,前面加上长度标识,后面加上CRC校验字段(CRC校验可以看前面一篇)。结果就是: 完成。 ...
分类:
其他好文 时间:
2018-01-17 01:02:45
阅读次数:
1336
一、 1、原始值和引用值 原始值:存储在栈(stack)中的简单数据段,它们的值直接存储在变量访问的位置。 引用值:存储在堆(heap)中的对象,存储在变量处的值是一个指针,指向存储对象的内存处。 2、原始类型:(基本数据类型) undefined、null、boolean、number、strin ...
分类:
Web程序 时间:
2018-01-15 18:54:23
阅读次数:
204
获取或者设置与某个套接字关联的选 项。选项可能存在于多层协议中,它们总会出现在最上面的套接字层。当操作套接字选项时, 获取或者设置与某个套接字关联的选 项。选项可能存在于多层协议中,它们总会出现在最上面的套接字层。当操作套接字选项时, 选项位于的层和选项的名称必须给出。为了操作套接字层的选项,应该 ...
分类:
其他好文 时间:
2018-01-15 12:37:15
阅读次数:
195
学习内核的本质其实是学习操作系统的原理 内核可以分成两类: 宏内核:追求性能,大部分系统代码放在0环,代表:Linux 微内核:追求维护性,大部分系统代码在3环,代表:Minix(Linux作者老师的作品),其中著名的设计:动态链接库,在Windows中也使用 Windows算是微内核和宏内核特点都 ...
分类:
其他好文 时间:
2018-01-11 15:55:24
阅读次数:
159
线程和进程的区别: 线程共享创建它的进程的地址空间;进程有自己的地址空间。 线程直接访问进程的数据段;进程拥有父进程的数据段的自身副本。 线程可以直接通信和该进程内的其他线程。 进程之间的通信必须通过 专有的进程间通信方式。 新线程很容易被创建;新进程需要复制父进程。 线程可以对相同进程的其他的线程 ...
分类:
编程语言 时间:
2018-01-02 18:44:56
阅读次数:
239
进制转换 基础知识 寄存器(CPU的工作原理 ax,bx,cx,dx通用寄存器 cs代码段寄存器) 寄存器(内存访问 ds数据段寄存器) 寄存器(内存访问 ss栈段寄存器) 编译器 汇编程序从写出到最终执行的过程 [bx]和loop指令 包含多个段的程序 更灵活的定位内存地址的方法 数据处理的两个基 ...
分类:
其他好文 时间:
2017-12-31 18:45:03
阅读次数:
176
对于ubuntu14.04操作系统,可以在/usr/src/linux-headers-4.4.0-31/include/linux/sched.h文件中看到进程控制块的结构体,如下 可以看到,里面定义了两个字段,pid和tgid,其中pid就是这个轻量级进程lwp的id,而tgid是lwp组的id ...
分类:
编程语言 时间:
2017-12-29 23:37:41
阅读次数:
307