摘要: 联编的概念 联编是指一个计算机程序自身彼此关联的过程,在这个联编过程中,需要确定程序中的操作调用(函数调用)与执行该操作(函数)的代码段之间的映射关系。 意思就是这个函数的实现有多种,联编就是把调用和对应的实现进行映射的操作。按照联编进行的阶段不同,可分为静态联编和动态联编。 静态联编 静态联编工作 阅读全文
posted @ 2018-02-11 21:22 Zackary丶Liu 阅读(1464) 评论(0) 推荐(1)
摘要: 一个类,它可能有基类,也可能存在多个基类,这些类里面还可能是虚拟基类,并且在类的本身也可能存在对象成员。那么所涉及的这些类或对象成员会以什么样的顺序来调用它们各自的构造函数呢?今天我们就来举例分析下。 执行以下程序: ~~~~ include using namespace std; class B 阅读全文
posted @ 2018-02-10 18:52 Zackary丶Liu 阅读(1601) 评论(0) 推荐(1)
摘要: 假设我们有类 A 、类 B 和类 Test ,类 Test 具有类 A 和类 B 的全部属性,并且它们都具有 temp 属性,现在我们需要在类 Test 中实现对 temp 属性的设定与读取,故写出以下程序: ~~~~ include class Base{ public: int temp; }; 阅读全文
posted @ 2018-02-09 22:10 Zackary丶Liu 阅读(286) 评论(0) 推荐(0)
摘要: 当我们在 Linux 系统中进行进程间通信时,例如信号量,消息队列,共享内存等方式,会发现有System V以及POSIX两种类型。今天我们就来简单介绍下它们。 POSIX: POSIX(Portable Operating System Interface for Computing System 阅读全文
posted @ 2018-02-08 20:17 Zackary丶Liu 阅读(1701) 评论(0) 推荐(0)
摘要: 共享内存 IPC 原理 共享内存进程间通信机制主要用于实现进程间大量的数据传输,下图所示为进程间使用共享内存实现大量数据传输的示意图: 共享内存是在内存中单独开辟的一段内存空间,这段内存空间有自己特有的数据结构,包括访问权限、大小和最近访问的时间等。该数据结构定义如下: ~~~~ from /usr 阅读全文
posted @ 2018-02-07 21:25 Zackary丶Liu 阅读(438) 评论(0) 推荐(0)
摘要: 信号量 IPC 原理 信号量通信机制主要用来实现进程间同步,避免并发访问共享资源。信号量可以标识系统可用资源的个数。最简单的信号量为二元信号量 下图为 Linux 信号量通信机制的概念图。在实际应用中,两个进程通信可能会使用多个信号量,因此,Linux 在管理时以信号量集合的概念来管理。 通常所说的 阅读全文
posted @ 2018-02-06 22:57 Zackary丶Liu 阅读(361) 评论(0) 推荐(0)
摘要: 消息队列 IPC 原理 消息队列是消息的链式队列,如下图为消息队列的模型。整个消息队列有两种类型的数据结构。 ~~~~ 1.msqid_ds 消息队列数据结构:描述整个消息队列的属性,主要包括整个消息队列的权限、拥有者、两个重要的指针(分别指向消息队列的第一个消息和最后一个消息)。 2.msg 消息 阅读全文
posted @ 2018-02-05 19:17 Zackary丶Liu 阅读(414) 评论(0) 推荐(0)
摘要: Python版本:3.5.2 假如我们有一个Student类,并在其中定义了一个score属性,但是score属性会被显露出去,没办法检查参数,导致成绩可以随意更改: ~~~~ stu = Student() stu.score = 9999 ~~~~ 这显然是不合逻辑的,为了限制score的范围, 阅读全文
posted @ 2018-02-04 20:47 Zackary丶Liu 阅读(438) 评论(0) 推荐(1)
摘要: 简介 IPC 主要有消息队列、信号量和共享内存3种机制。和文件一样,IPC 在使用前必须先创建,使用 ipcs 命令可以查看当前系统正在使用的 IPC 工具: 由以上可以看出,一个 IPC 至少包含 key值、ID值、拥有者、权限和使用的大小等关键信息。如果需要手工删除某个 IPC 机制,可以使用 阅读全文
posted @ 2018-02-04 18:16 Zackary丶Liu 阅读(321) 评论(0) 推荐(0)
摘要: 孤儿进程: 因父亲进程先退出而导致一个子进程被 init 进程收养的进程为孤儿进程,即孤儿进程的父亲更改为 init 进程,该进程在孤儿进程退出后回收它的内核空间资源。 僵死进程: 进程已经退出,但它的父亲进程还没有回收内核资源的进程为僵死进程,即该进程在内核空间的 PCB(进程控制块) 没有释放。 阅读全文
posted @ 2018-02-03 21:27 Zackary丶Liu 阅读(235) 评论(1) 推荐(0)