上一页 1 2 3 4 5 6 ··· 13 下一页

2008年2月28日

摘要: 将Linux 作为电子设备的软件开发和运行平台,这早已成为设备软件领域的热门话题,这的确可以为电子产品制造企业带来不少好处。然而,由于Linux一直都只能提供软实时(soft real-time)性能,而在汽车控制、工业控制、电信基础建设等诸多需要硬实时性能的应用中,都无法采用只有“软实时”能力的Linux,这就使得许多对时间较为敏感的应用都成为Linux难以涉入的禁地。 最近,美国风河系... 阅读全文
posted @ 2008-02-28 23:21 safeking 阅读(637) 评论(1) 推荐(0) 编辑

2007年4月18日

摘要: c编译系统在对程序进行通常的编译之前,先进行预处理。c提供的预处理功能主要有以下三种:1)宏定义 2)文件包含 3)条件编译 1. 宏定义 不带参数的宏定义 用一个指定的标识符来代表一个字符串,形式:#define 标识符 字符串 几点说明: 1) 宏名一般用大写 2) 宏定义不作语法检查,只有在编译被宏展开后的源程序时才会报错 3) 宏定义不是c语句,不在行末加分号 4) 宏名有效范围为定义到本... 阅读全文
posted @ 2007-04-18 10:14 safeking 阅读(411) 评论(0) 推荐(0) 编辑
 
摘要: 内联函数也称内嵌函数,它主要是解决程序的运行效率。 函数调用需要建立栈内存环境,进行参数传递,并产生程序执行转移,这些工作都需要一些时间开销。 C++中的内联函数定义很简单,只要在普通的函数前加一个关键字inline就可以了,除此之外和普通函数表面上没有什么区别(包括函数的调用方式),因为这样,所以在很多的C++初学者(甚至一些有C++编程经验的人) 看来,内联只是一个概念而已,其实... 阅读全文
posted @ 2007-04-18 10:12 safeking 阅读(966) 评论(0) 推荐(0) 编辑

2007年4月6日

摘要: 1,防止一个头文件被重复包含 #ifndef COMDEF_H #define COMDEF_H //头文件内容 #endif 2,重新定义一些类型,防止由于各种平台和编译器的不同,而产生的类型字节数差异,方便移植。 typedef unsigned char boolean; /* Boolean value type. */ typedef unsigned lo... 阅读全文
posted @ 2007-04-06 10:57 safeking 阅读(539) 评论(0) 推荐(0) 编辑

2007年3月22日

摘要: 1、移植的基本概念 移植是指将软件从一个平台迁移到另一个平台,包括以下几个方面: -- 从一个硬件平台移植到另一个硬件平台; -- 从一个操作系统移植到另一个操作系统; -- 从一种软件库环境移植到另一个软件库环境。2、Linux 硬件平台 在 Linux 内核里,每一个处理器指令集对应一个独立的体系结构(architecture),比如 alp... 阅读全文
posted @ 2007-03-22 16:15 safeking 阅读(1170) 评论(0) 推荐(0) 编辑

2007年3月21日

摘要: 1,Linux设备驱动属于内核的一部分,Linux内核的一个模块可以以两种方式被编译和加载:(1)直接编译进Linux内核,随同Linux启动时加载;(2)编译成一个可加载和删除的模块,使用insmod加载(modprobe和insmod命令类似,但依赖于相关的配置文件),rmmod删除。 内存 在Linux内核模式下,我们不能使用用户态的malloc()和free()函数申请和释放内存。进行内... 阅读全文
posted @ 2007-03-21 10:17 safeking 阅读(942) 评论(0) 推荐(0) 编辑

2007年3月19日

摘要: 1。文件的创建和读写 我假设你已经知道了标准级的文件操作的各个函数(fopen,fread,fwrite等等).当然如果你不清楚的话也不要着急.我们讨论的系统级的文件操作实际上是为标准级文件操作服务的. 当我们需要打开一个文件进行读写操作的时候,我们可以使用系统调用函数open.使用完成以后我们调用另外一个close函数进行关闭操作. #include #include #inc... 阅读全文
posted @ 2007-03-19 10:25 safeking 阅读(715) 评论(0) 推荐(0) 编辑

2007年3月13日

摘要: 当前,ARM公司的32位RISC处理器,以其内核耗电少、成本低、功能强、特有16/32位双指令集,已成为移动通信、手持计算、多媒体数字消费 等嵌入式解决方案的RISC标准,市场占有率超过了75 %。多家公司都推出了自己的基于ARM内核的处理器产品,越来越多的开发人员开始了针对ARM平台的开发。通常开发人员需要购买芯片厂商或第三方提供的开 发板,还需要购买开发软件,如C编译器或者集成了实时操作系统... 阅读全文
posted @ 2007-03-13 17:03 safeking 阅读(658) 评论(0) 推荐(0) 编辑
 
摘要: 变量的声明与定义: A of a variable allocates storage for the variable and may also specify an initial value for the variable. There must be one and only one definition of a variable in a program. A declarati... 阅读全文
posted @ 2007-03-13 10:27 safeking 阅读(10728) 评论(2) 推荐(0) 编辑

2007年3月9日

摘要: In single-threaded processes there is only one flow of control. The code executed by these processes thus need not to be reentrant or thread-safe. In multi-threaded programs, the same functions and ... 阅读全文
posted @ 2007-03-09 09:14 safeking 阅读(1190) 评论(0) 推荐(0) 编辑

2007年3月8日

摘要: 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。 3、全局区(静态区)(static)—,全局变量和静态变量的存储是放... 阅读全文
posted @ 2007-03-08 09:49 safeking 阅读(490) 评论(0) 推荐(0) 编辑

2007年3月7日

摘要: 引用是C++引入的新语言特性,是C++常用的一个重要内容之一,正确、灵活地使用引用,可以使程序简洁、高效。我在工作中发现,许多人使用它仅仅是想当然,在某些微妙的场合,很容易出错,究其原由,大多因为没有搞清本源。故在本篇中我将对引用进行详细讨论,希望对大家更好地理解和使用引用起到抛砖引玉的作用。 一、引用简介 引用就是某一变量(目标)的一个别名,对引用的操作与对变量直接操作完全一样。 引... 阅读全文
posted @ 2007-03-07 17:03 safeking 阅读(323) 评论(0) 推荐(0) 编辑
 
摘要: 【标 题】:理解编译预处理【关键字】:【来 源】:http://www.cublog.cn/u/13991/showart.php?id=150533在将一个C源程序转换为可执行程序的过程中, 编译预处理是最初的步骤. 这一步骤是由预处理器(preprocessor)来完成的. 在源流程序被编译器处理之前, 预处理器首先对源程序中的"宏(macro)"进行处理. C初学者可能对预处理器没什么概... 阅读全文
posted @ 2007-03-07 17:02 safeking 阅读(910) 评论(0) 推荐(0) 编辑
 
摘要: 1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL 我在这想看到几件事情: 1) #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等) 2)懂得预处理器将为你计算常数表达式的值,因此,直接写出你是如何计算一年中有多少秒而不是计算出实际的值,是更... 阅读全文
posted @ 2007-03-07 10:48 safeking 阅读(394) 评论(0) 推荐(0) 编辑
 
摘要: 请写一个C函数,若处理器是Big_endian的,则返回0;若是Little_endian的,则返回1 解答: int checkCPU( ) { { union w { int a; char b; } c; ... 阅读全文
posted @ 2007-03-07 10:16 safeking 阅读(343) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 13 下一页