Linux0.11的内核引导启动流程

Linux0.11的内核引导启动程序由boot/目录下的bootsect.s、setup.s和head.s完成,由于内核的启动涉及到硬件操作比较多,所以均是汇编文件。      讲述内核引导启动流程前,先了解Linux0.11中的bootsect.s、setup.s和head.s的大小,因为能够...

2015-08-19 16:33:40

阅读数 811

评论数 0

Linux顶层目录下的Makefile作用解析

Linux0.11版本顶层目录下的makefile文件的主要作用是指示make程序最终使用独立编译连接成的tools/目录中的build执行程序将所有内核编译代码连接和合并成一个可运行的内核影响文件image。     具体来讲,是对boot/中的bootsect.s、setup.s使用8086...

2015-08-18 17:39:24

阅读数 326

评论数 0

C++之:函数调用的名字查找与继承

以下内容摘抄于《C++ Primer中文版》:     理解函数调用的解析过程对于理解C++的继承至关重要,假定我们调用p->mem()(或者obj.mem()),则依次执行一下4个步骤:     (1)首先确定p(或obj)的静态类,该静态类型是类类型。     (2)在p(或obj...

2015-08-12 10:18:00

阅读数 365

评论数 0

C++之:对象的静态类型和动态类型

由于继承导致对象的指针和引用具有两种不同的类型:静态类型和动态类型。    静态类型:指针或引用声明时的类型。    动态类型:由它实际指向的类型确定。    例如:     ClassA *pgo = new ClassB;   //pgo的静态类型是ClassA*,动态类型是Class...

2015-08-12 10:08:52

阅读数 289

评论数 0

C++之 继承后的访问控制

C++中派生类有3种,分别为public、private和protected。    不同的继承方式的影响主要体现在:     1.派生类“对象”对基类成员的访问控制。     2.派生类“成员”对基类成员的访问控制,此处“成员”可以理解成派生类内部定义时使用基类成员的访问控制。     根据这2...

2015-08-11 17:49:06

阅读数 315

评论数 0

类的设计与受保护的成员

以下是C++ primer中文版中对类的设计关键概念的总结,是精髓,要好好理解,原文如下:     “不考虑继承的话,我们可以认为一个类有两种不同的用户:普通用户和实现者。其中普通用户编写的代码使用类的对象,这部分代码只能访问类的公有(接口)成员;实现者则负责编写类的成员和友元代码,成员和友元既...

2015-08-11 15:49:17

阅读数 552

评论数 0

S7-200 PLC Modbus指令的hold_start参数解析

上图是S7-200中的Modbus通信配置指令,其中最后一项为HoldStart参数,该参数为“起始寻址地址”,注意“起始”二字,在Modbus通信协议里,读写寄存器需要制定一个起始地址,一般是从0开始的,而这个HoldStart地址就是“偏移起始地址”,即如果HoldStart为&VB1...

2015-08-11 10:21:02

阅读数 1884

评论数 0

C++基类与派生类的转换

      在公用继承、私有继承和保护继承中,只有公用继承能较好地保留基类的特征,它保留了除构造函数和析构函数以外的基类所有成员,基类的公用或保护成员的访问权限在派生类中全部都按原样保留下来了,在派生类外可以调用基类的公用成员函数访问基类的私有成员。因此,公用派生类具有基类的全部功能,所有基...

2015-08-10 15:58:38

阅读数 337

评论数 0

C语言之static作用

在C语言中,static的字面意思很容易把我们导入歧途,其实作用有三条: (1)第一条也是最重要的一条:隐藏 当我们同事编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性,举例来说:同时编译2个源文件:a.c和main.c 下面是a.c的内容 char a = '...

2015-08-05 15:25:56

阅读数 820

评论数 2

提示
确定要删除当前文章?
取消 删除