上一页 1 ··· 3 4 5 6 7 8 9 10 11 12 下一页
摘要: step1:copy demos and set rights1cd~2mkdiropenCV_samples3cpOpenCV-2.1.0/samples/c/* openCV_samples4cdopenCV_samples/5chmod+x build_all.sh6./build_all.shstep2:Some of the training data for object detection is stored in /usr/local/share/opencv/haarcascades. You need to tell OpenCV which training data t 阅读全文
posted @ 2012-04-15 15:59 windmissing 阅读(143) 评论(0) 推荐(0) 编辑
摘要: step1:下载从http://sourceforge.net/projects/opencvlibrary下载OpenCV源码,下载文件为OpenCV-2.3.1a.tar.bz2。cd ~ wget http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.1/OpenCV-2.3.1a.tar.bz2/downloadstep2:解压,解压后的文件夹为OpenCV-2.3.1tar -xvf OpenCV-2.3.1a.tar.bz2step3:检查配置cd OpenCV-2.3.1 cmake .如果结果如图所示 阅读全文
posted @ 2012-03-30 11:01 windmissing 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 一、什么是信号1.信号是很短的消息,可以被发送一个进程或一个进程组,用于进程间的通信2.消息的内容通常是一个数,这个数用于标识信号信号的接收方一定是进程,发送方可能是进程,或者内核。信号只能发送给属于同一session以及同一个用户的进程3.信号的种类可分为两类(1)常规信号:编码范围1-31,如果一个常规信号被连续发送多次,会被合并成一次,即只有一个发送到接收进程(2)实时信号:编码范围32-64,它们必须被排队,以便发送的多个信号都被接收到(3)常规信号和实时信号,都是用队列来接收的,只是常规信号的接收队列,每个队列中最多只能有一项(4)可以看出,每个信号对应的信号处理函数相对自己是串行的 阅读全文
posted @ 2012-03-24 13:58 windmissing 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 1.schedule():选择系统中下一个要运行的进程(1)循环检测就绪队列中的每个任务 若任务的超时定时器超时 && 状态为可中断睡眠,则超时计时器清0,状态置为就绪 若任务的定时器过期,则定时器清0,SIGALARM信号置位(定时器!=超时定时器) 若任务除了阻塞信号外还有其它信号 && 状态为可中断睡眠,则状态置为就绪(2)选择counter值(剩余执行时间)最大的任务 若counter>0,则执行该任务 若counter=0,则重新计算每个任务的counter值,并重新执行step 22.sleep_on():睡眠函数,使当前进行进入睡眠状态(1) 阅读全文
posted @ 2012-03-08 20:44 windmissing 阅读(230) 评论(0) 推荐(0) 编辑
摘要: 1.B-树的性质(1)树中每个结点至多有m个子树(2)若根结点不是叶子结点,则至少有两个子树(3)除根结点以外所有非叶子结点至少有[m/2](上限符号)个子树(4)所有非终端结点包含以下信息:n,A0,K1,A1,K2,A2,……,Kn,An。其中,Ki是关键字,Ai是指向子树根结点的指针(5)所有叶子结点都出现在同一层次上,且不带信息2.B-树的查找,是顺指针查找结点和在结点的关键字中进行查找交叉进行的过程3.B-树的插入:先在最低层的某个非终端结点中添加一个关键字,若该结点的关键字个数不超过m-1,则插入完成,否则要产生结点的分裂4.B-树的删除:(1)找到该关键字所在结点,并从中删除之( 阅读全文
posted @ 2012-02-29 15:40 windmissing 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 1.插入排序:将一个记录插入到已排好序的有序表中,从而得到一个新的、记录数增1的有序表(1)简单插入排序(2)折半插入排序(3)希尔排序:将整个待排记录序列分成若干个子序列分别进行插入排序,待整个序列基本有序时,再对全体记录进行一次直接插入排序2.交换排序(1)起泡排序:第i趟起泡排序中从L.r[1]到L.r[n-i+1]依次比较相邻两个记录的关键字,并在逆序时交换相邻记录,其结果是这n-i+1个记录中关键字最大的记录被交换到第n-i+1的位置上(2)快速排序:选取一个记录作为枢轴,将所有关键字较它小的记录都安置在它的位置之前,将所有关键字较它大的记录都安置在它的位置之后,将序列分成两个子序列 阅读全文
posted @ 2012-02-29 11:26 windmissing 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 1.不带出错码的中断处理过程-asm.s(1)原寄存器入栈(由硬件完成):SS, ESP, EFLAGS, CS(2)中断返回地址入栈:EIP(3)要调用的函数地址入栈(4)EAX的值与栈顶的值(要调用的函数的地址)交换(5)其它寄存器入栈:EBX, ECX, EDX, EDI, ESI, EBP, DS, ES, FS(6)出错号入栈:error_code。如果没有出错号,就0入栈(7)EIP在栈中的地址入栈(8)所有段寄存器转为内核代码段的段选择符:0x08(9)调用相关C处理函数(10)两次出栈(步骤6、步骤7入栈的内容)(11)弹出除(步骤1、步骤2以外的所有内容)(12)恢复上下文( 阅读全文
posted @ 2012-02-29 10:00 windmissing 阅读(262) 评论(0) 推荐(0) 编辑
摘要: 1.main()(1)设置系统的根文件设备号以及一些内存全局变量(2)所有方面的硬件初始化工作:陷阱门、块设备、字符设备、tty、开机启动时间、调度程序、硬盘、软驱(3)开中断,切换到任务0中运行(4)切换到用户模式(5)创建一个用于init()的子进程(6)循环执行pause()、2.init()(1)安装根文件系统(2)打开tty0,产生输入输出设备(3)显示系统信息(4)创建进程2(5)进程2为交互执行初始化配置(6)进程2退出、(7)步骤4-步骤6无限循环问题:《Linux内核完全剖析-基于0.12内核》P266理解不了 阅读全文
posted @ 2012-02-28 19:25 windmissing 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 1.从系统加电起所执行程序的顺序ROM BIOS -----> bootsect.S -----> setup.S -----> head.s -----> main.c其中,head.s和main.c都属于system模块main属于初始化程序,这里不讲2.几个程序的比较程序名位置语言ROM BIOSROMbootsect.Sboot/bootsect.Sas86汇编语言setup.Sboot/setup.Sas86汇编语言head.sboot/head.sGNU汇编语言main.cinit/main.cC语言3.ROM BIOS的功能(1)执行某些系统检测(2)在物 阅读全文
posted @ 2012-02-26 16:52 windmissing 阅读(226) 评论(0) 推荐(0) 编辑
摘要: 一、分段与分页的比较1.逻辑地址 -----(分段机制)-----> 线性地址 -----(分页机制)-----> 物理地址分段机制是必须有的,分页机制可以没有。如果没有分页机制,线性地址=物理地址不同的分段机制和不同的分段机制可以随意组合2.逻辑地址 = 选择符(16位) : 偏移值(32位),逻辑地址是二维的线性地址和物理地址都是32位,是一维的3.分段的原因:隔绝各个任务的代码、数据和堆栈区域的机制,使多个程序(或任务)可以运行在同一处理器上而不会相互干扰分页的原因:为虚拟内存系统提供了实现机制,也用于提供多任务之间的隔离措施4.先执行段级保护,再执行页级保护段特权级有4级, 阅读全文
posted @ 2012-02-20 20:11 windmissing 阅读(327) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 10 11 12 下一页