- 博客(27)
- 资源 (3)
- 收藏
- 关注
转载 物理地址 虚拟地址
物理地址 虚拟地址2008-02-29 22:59Windows 2000 使用基于分页机制的虚拟内存。每个进程有4GB的虚拟地址空间。基于分页机制,这4GB地址空间的一些部分被映射了物理内存,一些部分映射硬盘上的交换文件,一些部分什么也没有映射。程序中使用的都是4GB地址空间中的虚拟地址。而访问物理内存,需要使用物理地址。 下面我们看看什么是物理地址,什么是虚拟
2009-11-06 20:33:00 736
原创 读核笔记之用户进程与内核线程
1"每个用户进程都有自己独立的地址空间0~3G;内核线程没有自己的地址空间,而是共用同一内存空间3~4G。" 所有的内核空间都用的是 3G-4G的线性地址,然后通过 线性地址-3G 可以得到物理地址(当然实现上还是通过页表做的)。 而每个进程都具有自己的页目录和页表。因此是独立的。 而内核 公用 用户进程的 页目录的 高部分。 因此可以说 没有自己的地址空间。 linux内核的虚
2009-07-21 09:58:00 1168
原创 函数返回指向函数的指针
void (*fun(void))(void) { cout<<" back a point to fun"<<endl; return (void(*)(void))fun; }int main(){ fun()(); system("pause"); return 0;} run:back a point to funback
2009-07-17 19:47:00 472
原创 定位new
template void construct (T1 *p,const T2 &value){ new(p)T1(value);}construct 函数模板负责在给定的内存位置构造对象,并同时以某个初始值来初始化它,这里new操作符的形式成为定位new(placement new),这种形式的new并不为新对象分配内存,而只不过是将新对象放置到p所指的内存位置,任何以这种方
2009-07-14 16:37:00 997
原创 bootloader 分析
一、U-BOOT的目录结构u-boot目录下有18个子目录,分别存放管理不通的源程序。这些目录中所要存放的文件有其规则,可以分成三类。第一类目录与处理器体系结构或者开发板硬件直接相关;第二类目录是一些通用的函数或者驱动程序;第三类目录是u-boot的应用程序、工具或者文档。Board:和一些已有开发板相关的文件,比如Makefile和u-boot.lds等都和具体开发板的硬件和地址分配有关。C
2009-07-10 22:02:00 937
原创 杂记
好多的基本知识过一段时间就糊涂了,做一下总结 enum data{ A,B,C,D,E}mydata;mydata 只能被枚举值(常量)赋值, mydata=A;sizeof(data)=4;整形类型--------------------------------------------------------union data{ int i; c
2009-07-10 14:50:00 434
转载 变参数printf解析
摘要:一直以来都觉得printf似乎是c语言库中功能最强大的函数之一,不仅因为它能格式化输出,更在于它的参数个数没有限制,要几个就给几个,来者不拒。printf这种对参数个数和参数类型的强大适应性,让人产生了对它进行探索的浓厚兴趣。 关键字:printf, 可变参数 1. 使用情形 int a =10;double b = 20.0;char *str = "H
2009-06-14 11:17:00 798
转载 Linux内核中task_struct的中文介绍(2.4内核的)
from http://blog.csdn.net/phphot/archive/2009/05/31/4229475.aspx1 struct task_struct { 2 /* 3 * offsets of these are hardcoded elsewhere - touch with care 4 */ 5 volati
2009-06-01 10:44:00 972
原创 j2me学习总结
嗯,从上周五开始安装JAVA虚拟机,到今天总共6天,终于能够实现我想要的功能,呵呵头一次接触JAVA,j2me,java语法都不会,还好有点c、c++基础下面就做一下总结,防止以后忘了。。。。。一 基本术语与常识JDK-- java development kit :JAVA虚拟机,也就是说所有的java程序必须在jdk安装的前提下才能运行J2ME--java 2.0 mi
2009-05-27 14:48:00 551
原创 V4L图像采集总结
采用中星微ZC301摄像头的V4L图像采集/**********v4l.h*******************/*name :v4l.h date:2009-5-20 author:kevin copyright:all is reserved**************************/#ifndef _V4L_H_#define _V4L_
2009-05-20 19:22:00 7476 6
原创 关于UBUNTU应用的一些常识
关于ubuntu字体的修改方法:现在要修改的字体,例如Apple或者SW中的字体文件是以.tff结尾修改权限 chmod 755 *.tff然后到 /usr/share/fonts/下建立自己的目录,然后把该文件复制到这里在此目录下打开控制台sudo mkfontscalesudo mkfontdir也可以参照现面的方法http://wiki.ubuntu.or
2009-05-15 20:08:00 495
原创 终于调试成功,在这里总结一下,怕以后忘了
qt/embedded 平台的成功搭建,在前面的文章里提到了,qt-x11和qt-emdbed-x86的都编译通过了,但是qt-embedded-arm没有通过郁闷,只好用qt-embedded-2.3.7下面总结一下: 1,开发板提供的qt-embed没有qvfb工具,而且也不知道怎么搞的,designer就是不起作用,就好像锁住键盘了一样,不能输入任何字符 2,只好自己手写
2009-05-12 15:19:00 677
原创 class String 的实现
#include #include class String{public: String(); String(const char *); ~String(); String(const String &s); String& operator= (const char *); String& operator= (co
2009-04-28 08:57:00 1574
原创 类中const 数据成员的定义
林锐博士的《高质量c++编程》page43中说明不能在类声明中初始化const 数据成员。以下用法是错误的class A{ ...const int SIZE=100;int array[SIZE];};因为类的对象未被创建时,编译器不知道SIZE的值是什么 但是可以把const 数据成员定义为static型就可以了,归类所拥有,不属于对象。在比较老的
2009-04-23 19:11:00 676
转载 Debian apt-get 使用指南
经常忘记,总是man,索性就把要用到的都给整了出来.需要用到sudo,”packgeame”和”string”替换成你想要安装或者查找的程序apt-get update —— 在修改/etc/apt/sources.list或者/etc/apt/preferences之後运行该命令。此外您需要定期运行这一命令以确保您的软件包列表是最新的。apt-get in
2009-04-23 19:01:00 1127
原创 对消息队列各函数理解
#define MAX 256struct msgbuf{ long mtype;//数据类型 char mtext[MAX]; //发送的消息数据};/***********************消息队列创建函数*******************************/int msgget(key_t key,int flag)key: key_t f
2009-04-23 09:32:00 678
转载 防止死锁的四种办法
死锁的防止方法:如果有死锁形成,则4个必要条件一定同时成立,于是,只要采用的资源分配策略能使其中之一不成立,则就能防止死锁的发生。(1)互斥条件要使互斥使用资源的条件不成立,唯一的资源分配策略是允许进程共享资源。如“只读文件”是一种很好的共享资源。要破坏“互斥使用资源”的条件经常是行不通的。如:打印机不能被多个进程共享。对可共享的磁盘来说,任何时刻也只允许一个进程启动它。(2)占有并等待条件要是占
2009-04-22 21:06:00 4773
转载 任务、进程、线程
面试经常问“进程与线程的区别”,搜罗了一些资料稍作整理。任务(task)指由软件完成的一个活动。一个任务既可以是一个进程,也可以是一个线程。简而言之,它指的是一系列共同达到某一目的的操作。例如,读取数据并将数据放入内存中。这个任务可以作为一个进程来实现,也可以作为一个线程(或作为一个中断任务)来实现。进程和线程都是由操作系统所体会的程序运行的基本单元,系统利用该基本单元实现系统对应
2009-04-22 20:59:00 1746
原创 关于线程、进程之间的数据共享
/*进程与线程共享数据*//*在一进程创建两个线程:线程1、线程2,测试三者之间的关系*./#include #include /*pthread.c*/10 static int m; 11 void *pthread1(void *arg) 12 { 13 printf("pthread1:m is %d/n",m); 14 m=5; 15 prin
2009-04-22 20:18:00 1196
原创 正确安装Qt/Embedded开发环境(修改)
经历N多磨难后,终于成功安装上 了 Qt/Embedded开发环境,其间由于 一些概念的不了解以及一些步骤的错误操作 ,前前后后大概装了3次,当然还有4,5次是测试一些配置选项以及命令的。为了让刚开始学习Qt的人不再跟 我一样犯同样的错误,花费许多不该花费的时间,我把自己的安装经历说 一下,希望能 对大家有利。 PC所用 Linux系统版本:Ubuntu8.04Qt/E
2009-03-31 10:42:00 4130 2
转载 APUE2作者提供的源码编译方法及单个源码编译的实现(转载)
前面一篇文章讲解了《UNIX环境高级编程》源码编译方法。文中所讲到的编译方法是非作者提供的编译方法,即不使用作者提供的头文件,程序中所有使用的头文件都一一列出。而程序中的出错处理函数则简单的用printf函数替代。 随后,也有网友提出如何采用作者的方法来对所有的程序进行编译。出于解决问题,同时也想实现这个方法,毕竟实现之后每个程序都可以直接运行,还是比较方便的。因此,就按照源代码文件夹
2009-03-31 10:26:00 589
原创 解决ununtu 8.04版本以上回收站无法删除问题
8.04以前的cd ~cd .Trashsudo rm -rf * 8.04以后cd ~cd .local/share/Trashsudo rm -rf *
2009-03-31 10:13:00 396
转载 DSP、嵌入式、软件笔试面试题
1、请用方框图描述一个你熟悉的实用数字信号处理系统,并做简要的分析;如果没有, 也可以自己设计一个简单的数字信号处理系统,并描述其功能及用途.(仕兰微面试题 目) 2、数字滤波器的分类和结构特点.(仕兰微面试题目) 3、IIR,FIR滤波器的异同.(新太硬件面题) 4、拉氏变换与Z变换公式等类似东西,随便翻翻书把如.h(n)=-a*h(n-1)+b*δ(n) a.求h (n)的z
2008-11-09 20:11:00 1793
转载 嵌入式linux工程师面试题目C语言基础部分(转)
嵌入式linux工程师面试题目C语言基础部分在网上看到了一篇嵌入式的面试题,忽然觉得自己很渺小……在未来一段时间内我会陆续贴上我的答案,当然可能有些我做不出来,做出来的也不一定准确,在检验和提高自己的同时,希望有走过路过高人指点一二。下面的题目必须全部答对才给分:1、 如何在C中初始化一个字符数组。2、 如何在C中为一个数组分配空间。3、 如何初始化一个指针数组。4、如何定
2008-11-09 20:06:00 683
linux设备驱动程序第三版
2009-07-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人