自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

转载 Memory Ordering

<br />原文出处:http://blog.chinaunix.net/u2/88585/showart_2087702.html<br /><br />Background<br /><br />很久很久很久以前,CPU忠厚老实,一条一条指令的执行我们给它的程序,规规矩矩的进行计算和内存的存取。<br />很久很久以前, CPU学会了Out-Of-Order,CPU有了Cache,但一切都工作的很好,就像很久很久很久以前一样,而且工作效率得到了很大的提高。<br />很久以前,我们需要多个C

2011-01-06 00:08:00 634

原创 volatile关键字

<br />volatile关键字用于阻止编译器进行相关优化。编译时如果启用了编译选项,编译器会根据其自身的逻辑判断,优化代码,包括增减语句、调整语句顺序等,而这在很多特定的情况下是不被接受的。比如,读取GPIO端口值或者寄存器值,一般要求读取的值就是GPIO端口或者寄存器内当前的值。如果这些读取的语句不幸被编译器优化了,那么读取的值就有可能是一个过期的值,而不是当前状态下的真正的值。另一个比较常见的应用就是资源引用计数器,该计数器通常就被定义为一个使用了volatile关键字限定的整数,以保证每次读取的该

2011-01-06 00:03:00 473

原创 Ubuntu移除桌面自动启动

1. 修改文件/etc/init/rc-sysinit.conf    env DEFAULT_RUNLEVEL=3修改为env DEFAULT_RUNLEVEL=22. 修改文件/etc/init/gdm.conf    找到stop on runlevel [016]一行,在其上方插入如下一行          and runlevel [!3])    并去除上一行末尾的两个右括号中的一个。

2010-12-17 12:59:00 589

原创 ARM平台之AMBA片上总线

摘自:http://baike.baidu.com/view/1362076.htm AMBA片上总线是由ARM公司推出的,受到了广大IP开发商和SoC系统集成者的青睐,目前已成为一种流行的工业标准片上结构。AMBA规范主要包括了AHB(Advanced High performance Bus)系统总线和APB(Advanced Peripheral Bu

2010-03-21 22:12:00 772

原创 Kconfig 语法速查

1. syntax1.1 mainmenu    mainmenu 1.2 config    config     1.3 menuconfig    menuconfig     1.4 choice    choice            endchoic

2010-03-06 17:50:00 1384

原创 内核配置选项之CONFIG_AEABI

 The Linux kernel configuration item CONFIG_AEABI:prompt: Use the ARM EABI to compile the kerneltype: tristatedepends on: (none)defined in arch/arm/Kconfigfound in Linux Kernels: from 2.

2010-03-01 00:05:00 3023

原创 Linux时钟基本概念

1、系统时钟(System Clock)与实时时钟(Real Time Clock) 实时时钟指的是硬件时钟,而系统时钟指的是软件时钟,存在于Linux系统之中。当系统启动时,Linux会从硬件读取时间做为系统时间,之后便一直采用系统时间。Linux命令date可以用来设置系统时钟,而hwclock或者clock则用来设置实时时钟,即硬件时钟。  2、时钟频率 单位时间

2010-01-14 23:47:00 2549

转载 理解复杂的C/C++声明 const, typedef , 函数指针(转贴)

转自:http://buaadallas.blog.51cto.com/399160/80947   让我们从一个非常简单的例子开始,如下:int n;这个应该被理解为“declare n as an int”(n是一个int型的变量)。接下去来看一下指针变量,如下:int *p;这个应该被理解为“declare p as an int *”(p是一个int *型的变量),或者说p

2010-01-03 23:46:00 546

原创 变量属性扩展

1、__attribute__((section(“section_name ”)))(参考:http://bigbluesmth.bokee.com/5590910.html) 通常,编译器会把它生成的目标文件放置在data和bss段。然而有时候你需要其他的段,或者你需要把特定的变量放在特定的段中。section属性用于指定一个变量或者一个函数所在的特定段。如下例: //fi

2009-11-15 14:46:00 448

原创 字符串常量的一种连接方式

 方法:各个常量字符串之间使用空格字符相连。 示例程序: #include #include int main(int argc, char *argv[]){    char fmt[] = "a" "b" "%s/n";    char str[] = "b" "a";    printf(fmt,str);    }

2009-11-15 13:10:00 791

原创 两个数据库设计实例

(注:摘自 http://blog.163.com/jiang-640/blog/static/86403594200932994637923) 一、树型关系的数据表不少程序员在进行数据库设计的时候都遇到过树型关系的数据,例如常见的类别表,即一个大类,下面有若干个子类,某些子类又有子类这样的情况。当类别不确定,用户希望可以在任意类别下添加新的子类,或者删除某个类别和其下的所有子

2009-11-10 00:43:00 9491 2

原创 处理器分类

指令集分类精简指令集(RISC)复杂指令集(CISC)复杂指令集强调指令的能力,减少目标代码的数量,但是指令复杂,指令周期较长。而精简指令集则尽可能的使指令集小,指令周期短,但目标代码更多。目前,这两种指令集已经部分相互融合。 体系结构分类冯-诺伊曼结构(又称普林斯顿结构)哈佛结构冯-诺伊曼结构是一种将程序指令存储器和数据存储器合并在一起的存储器

2009-11-01 19:59:00 1475 2

原创 ARM920T时钟模式

更新历史2009-10-17 18:45:50    添加P15的1号寄存器的两个位nF和iA2009-10-17 18:05:31    添加三种时钟模式 图11、快速总线模式GCLK=BCLK,FCLK被忽略板子reset之后即进入该模式该模式的典型应用是执行启动代码,同时软件配置PLL,使得FCLK更高nF=

2009-10-17 17:02:00 1508

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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