12 2013 档案

摘要:首先说下,这几天没写博客我在干了什么,因为要准备明年的数模比赛,所以最近在看一些资料,再是总结一下在数模当中的算法,感慨也很深的,也在数模中的算法中学习到了很多,再者,数模虽然在我看起来并没有多大的实用性,但是现在是真心喜欢上了,尽管刚才出现各种bug,各种调试都没结果,但是数模在生活中的应用确... 阅读全文
posted @ 2013-12-31 22:30 技术让梦想更伟大 阅读(424) 评论(0) 推荐(0) 编辑
摘要:在写到SCI 中断发送,中断接收程序的时候,在程序中会出现#pragma CODE_SEG __NEAR_SEG NON_BANKED/#pragma CODE_SEG DEFAULT,这两句话在程序中具体的代码如下: 1 /************************************* 阅读全文
posted @ 2013-12-24 00:01 技术让梦想更伟大 阅读(2803) 评论(0) 推荐(0) 编辑
摘要:在XS128的SCI学习的过程中,INIT_PLL()显得很重要,初始化锁相环几乎在每个程序中都有,今天看的程序-初始化锁相环的相关代码如下:/*******************************************//* 初始... 阅读全文
posted @ 2013-12-23 17:58 技术让梦想更伟大 阅读(3486) 评论(0) 推荐(0) 编辑
摘要:SCI,异步串行通信接口,内置独立的波特率产生电路和SCI收发器,可以选择发送8或9个数据位(其中一位可以指定为奇或偶校验位)。 SCI是全双工异步串行通信接口,主要用于MCU与其他计算机或设备之间的通信,几个独立的MCU也能通过SCI实现串行通信,形成网络。 MC12里有两个SCI(SCI... 阅读全文
posted @ 2013-12-22 15:45 技术让梦想更伟大 阅读(522) 评论(0) 推荐(0) 编辑
摘要:在写到 pwm音阶程序的时候,在代码中有#if...#endif的用法问题,相关音阶的代码如下: 1 /*******************************************************/ 2 /* pwm音阶程序 */ 3 /********************** 阅读全文
posted @ 2013-12-21 19:04 技术让梦想更伟大 阅读(11063) 评论(0) 推荐(0) 编辑
摘要:或许是冬天的单调引起了人们的视觉惰性也或许文字的单调烦扰了时间的心境在某个早晨看着那承接雨丝嫩绿,一个字眼开始闯进了生活:春,有些欣喜,有些懊恼。不过终于是期待已久的,迟到的季节。雨,是这个世界不可或缺的记忆,是予心灵予文字的一份厚礼朦胧中,改写了一片天地,失落中或许该有惊喜一幅长卷,淡雨微烟。或有... 阅读全文
posted @ 2013-12-19 13:39 技术让梦想更伟大 阅读(271) 评论(2) 推荐(0) 编辑
摘要:这几天忙着去复习了,但是心理总是不踏实,不到实验室里就觉得一天的生活变了个样,现在还是晚上来这里“搞起”吧,白天还是在复习准备考试。因为要开始学习freescale,准备明年的比赛了,觉得是时候开始搞这个了,这几天也看了一下大概的内容,发现程序当中#pragma用的很多,每个程序都有,以前写的代码也 阅读全文
posted @ 2013-12-18 21:38 技术让梦想更伟大 阅读(906) 评论(0) 推荐(0) 编辑
摘要:突然落下的夜晚,隔世般阑珊分花拂柳间,抬头望见此身行作云间月,闲云孤鹤一茫然隔着摇曳的柳树,轩上独清傲蓦然回首时,兰心蕙质相逢无语君应笑,各自春风慰寂寥曾想船前一壶酒,船后一卷书那样也不会羡煞世间留下千丝万缕且听缠绵一眼万年,美得越蜿蜒也许一蹉跎,便是两鬓苍苍谁共我,醉明月,诉衷肠? 阅读全文
posted @ 2013-12-16 19:38 技术让梦想更伟大 阅读(197) 评论(2) 推荐(1) 编辑
摘要:在嵌入式Linux中,串口是一个字设备,访问具体的串行端口的编程与读/写文件 的操作类似,只需打开相应的设备文件即可操作。串口编程特殊在于串 口通信时相关参数与属性的设置。嵌入式Linux的串口编程时应注意,若在根文件中没有串口设备文件,应使用mknod命令创建,这这里假设串口设备是 /dev/ttyS0,介绍一下串口的编程过程。#mknod /dev/ttyS0 c 4 641、打开串口打开串口设备文件的操作与普通文件的操作类似,都采用标准的I/O操作函数open()。fd = open("/dev/ttyS0",O_RDWR|O_NDELAY|O_NOCTTY); op 阅读全文
posted @ 2013-12-14 00:12 技术让梦想更伟大 阅读(915) 评论(0) 推荐(0) 编辑
摘要:目录:1. Linux系统调用原理2. 系统调用的实现3. Linux系统调用分类及列表4.系统调用、用户编程接口(API)、系统命令和内核函数的关系5. Linux系统调用实例6. Linux自定义系统调用1.系统调用原理系统调用,顾名思义,说的是操作系统提供给用户程序调用的一组“特殊”接口。用户程序可以通过这组“特殊”接口来获得操作系统内核提供的服务,比如用户可以通过文件系统相关的调用请求系统打开文件、关闭文件或读写文件,可以通过时钟相关的系统调用获得系统时间或设置定时器等。从逻辑上来说,系统调用可被看成是一个内核与用户空间程序交互的接口——它好比一个中间人,把用户进程的请求传达给内核,待 阅读全文
posted @ 2013-12-13 09:24 技术让梦想更伟大 阅读(698) 评论(0) 推荐(0) 编辑
摘要:共享内存是允许多个进程共享一块内存,由此来达到交换信息的进程通信机制;它很快没有中间介质,唯一的不足就是需要一定的同步机制控制多个进程对同一块内存的读/写,,它的原理如下:每个共享内存段都有一个shmind_ds结构,定义如下:struct shmid_ds{ struct ipc_perm shm_perm; int shm_segsz; ushort shm_lkcnt ; pid_t shm_cpid; pi... 阅读全文
posted @ 2013-12-12 17:21 技术让梦想更伟大 阅读(1380) 评论(0) 推荐(1) 编辑
摘要:守护进程常常在系统引导装入时启动,在系统关闭时终止,没有控制终端,所以是在后台运行的,linux大部分服务器就是用守护进程实现的,守护进程的编程也不复杂,下面来说一下守护进程的特征、编程规则、出错处理等。守护进程的特征:1.所有守护进程都以超级用户(ID=0)的优先权运行;2。没有一个守护进程具有控制终端—终端名称设置为问号(?)、终端前台进程组I D设置为-1。缺少控制终端可能是精灵进程调用了s e t s i d的结果。3.除u p d a t e以外的所有精灵进程都是进程组的首进程,对话期的首进程,而且是这些进程组和对话期中的唯一进程。u p d a t e是它所在进程组和对话期(... 阅读全文
posted @ 2013-12-12 13:36 技术让梦想更伟大 阅读(407) 评论(0) 推荐(0) 编辑
摘要:首先我得检讨一下自己,这几天有些颓呀,打不起精神,板子出了点问题,果真自学还是很困难呀,硬件方面难解决呀,理想与现实还是很有差距的,伤透了,凌乱了。 一直在理解进程间通信的问题。发现上次忽略了一个问题,就是命名管道,命名管道和一般的管道有一些显著的不同:1.FIFO是在文件系统中作为一个特殊的设备文件而存在的;2.不同祖先的进程之间可以通过管道共享数据;3.当共享管道的进程执行完所有的I/O操作后,FIFO将继续保存在文件系统中以便以后使用。 这里需要注意一下:管道只能由相关的进程使用,它们共同的祖先进程创建了管道,但是通过FIFO,不相关的进程也能交换数据。 FIFO的创建:#in... 阅读全文
posted @ 2013-12-11 22:48 技术让梦想更伟大 阅读(614) 评论(0) 推荐(0) 编辑
摘要:MMU 是内存管理单元,在现代的处理器中扮演重要角色,它是CPU用来管理虚拟存储器、物理存储器的控制路线,先举个例子来说明一下MMU的相关概念: ---地址范围、虚拟地址映射为物理地址以及分页机制 地址范围是一个计算机上的一个程序能够产生地址的集合,这个范围的大小由CPU的位数决定,例如一个32位的CPU,它的地址范围是0~0xFFFFFFFF (4G),而对于一个64位的CPU,它的地址范围为0~0xFFFFFFFFFFFFFFFF (16E).这个范围就是我们的程序能够产生的地址范围,我们把这个地址范围称为虚拟地址空间,该空间中的某一个地址我们称之为虚拟地址。与虚拟地址空间和虚拟地... 阅读全文
posted @ 2013-12-10 10:24 技术让梦想更伟大 阅读(957) 评论(0) 推荐(0) 编辑
摘要:管道是linux的一种通信方式,一种两个进程间进行单向通信的机制,它提供了简单的流控制机制,系统提供了pipe生成一个管道并返回两个描述符,一 个用来读管道,一个用来写管道,因此它们可以共享访问文件,这样每个管道就可以有很多个读进程和写进程,然而实际上进程不知道它正在读或写的是一个管道, 它有以下局限性: 由于管道传递数据的单向性,决定其使用的局限性:数据的单向流动;有亲缘关系的进程间的通信;没有名字;缓冲区大小受限制(传送的是无格式的字节流) 管道就是一个存在于内存的特殊文件,进程就是通过读写该文件进行通信的(内存中的某个页面作为数据缓冲区) 如果要建立两个进程的数据通路,首... 阅读全文
posted @ 2013-12-09 23:28 技术让梦想更伟大 阅读(1567) 评论(0) 推荐(0) 编辑
摘要:艾弗森,对不起,我还爱着你。有时候我自己都不知道自己我怎么了,直到最后才发现,我还爱着你。那天起,我认识了你,便一发不可收拾。这些天,谢谢你,似乎因为你的影响让我改变了,坚持了许多。致以至今我才发现关于你似乎已经成为了一种习惯,一种下意识的思念。岁月催人老,一切仿佛在昨天。关于曾经,似乎清晰的浮现在脑海,久久不得释怀。第一次拥有你的海报,平坦的放在课桌里,生怕别人碰出半点折痕。第一次拥有你的书籍,翻了一遍又一遍,也不曾在上面留下半点墨迹。第一次拥有你的球衣,很干脆的穿在身上,绕着班级兴奋的炫耀了好几圈。第一次看到你的视频,静静地除了心跳加速的声音,没有任何其他夹杂的声音。第一次看到你的名字,便 阅读全文
posted @ 2013-12-09 00:01 技术让梦想更伟大 阅读(421) 评论(2) 推荐(1) 编辑
摘要:在之前大概的概述了进程之间的通信,下面笔者具体述说一下进程通信中最古老的一种通信方式之一---信号(Signals ),信号是用户进程之间通信和同步的一种原始机制,操作系统通过信号来通知进程系统中发生了某种预先规定好的事件(一组事件中的一个) 一、 在一个信号的生命周期中有两个阶段:生成和传送。当一个事件发生时,需要通知一个进程,这时生成一个信号。当进程识别出信号的到来,就采取适当的动作来传送或处理信号。在信号到来和进程对信号进行处理之间,信号在进程上挂起(pending)。信号可以直接进行用户空间进程和内核进程之间的交互,内核进程也可以利用它来通知用户空间进程发生了哪些系统事件。它可以在.. 阅读全文
posted @ 2013-12-08 16:19 技术让梦想更伟大 阅读(323) 评论(0) 推荐(0) 编辑
摘要:ARM体系结构简介新一代的ARM9处理器,能达到两倍ARM7的处理能力,它们的区别如下:ARM微处理器的工作状态(可切换):第一种为ARM状态,此时处理器执行32位的字对齐的ARM指令第二种为Thumb状态,此时处理16位的半字节对齐的Thumb指令ARM体系结构的存储方式大端格式:字数据的高字节存储在低地址,反之也是;小端格式:与上相反ARM微处理器模式(7种),这里笔者不详细说明了,一些资料上就就有解释说明。支持MMUMMU是内存管理单元,他把内存以“页(page)”为单位来进行处理。一页内存是指一个具有一定大小的连续的内存块,通常4096或8192B。操作系统为每个正在运行的程序建立并维 阅读全文
posted @ 2013-12-07 13:14 技术让梦想更伟大 阅读(679) 评论(0) 推荐(0) 编辑
摘要:一个大型的应用系统,往往需要众多进程协作,进程间通信的重要性显而易见。进程间通信有如下一些目的: 数据传输:一个进程需要将它的数据发送给另一个进程,发送的数据量在一个字节到几兆字节之间。 共享数据:多个进程想要操作共享数据,一个进程对共享数据的修改,别的进程应该立刻看到。 通知事件:一个进程需要向另一个或一组进程发送消息,通知它(它们)发生了某种事件(如进程终止时要通知父进程)。 资源共享:多个进程之间共享同样的资源。为了作到这一点,需要内核提供锁和同步机制。 进程控制:有些进程希望完全控制另一个进程的执行(如Debug进程),此时控制进程希望能够拦截另一个进程的所有陷入和异常,... 阅读全文
posted @ 2013-12-06 23:44 技术让梦想更伟大 阅读(385) 评论(0) 推荐(1) 编辑
摘要:这篇文章主要是讲解到Linux进程的控制,包括程序和进程、守护进程、守护进程的出错处理。1、程序和进程 程序(program)是存放在磁盘文件中的可执行文件,程序的执行实例被称为进程(process)。init进程 每个linux进程都一定有一个唯一的数字标识符,称为进程ID(process ID),进程ID总是一非负整数,进程ID为1通常是init进程,在自举过程结束时由内核调用。init进程绝不会终止,它是一个普通的用户进程(与交换进程不同,它不是内核中的系统进程),但是它以超级用户特权运行。 Linux系统是一个多进程的系统,进程之间具有并行性、互不干扰的特点。linux中进程... 阅读全文
posted @ 2013-12-06 11:27 技术让梦想更伟大 阅读(1152) 评论(0) 推荐(0) 编辑
摘要:进程间通信就是在不同进程之间传播或交换信息,进程间控制信息的交换称为低级通信,进程间大批量数据的交换称为高级通信。进程通信分为3种:1.共享存储器系统:为了传送大量数据,在存储器中划出一块共享存储区,诸进程可通过对共享存储区进行读数据或写数据以实现通信。2.消息传递系统:又分为直接通信方式、间接通信方式.3.管道通信系统:向管道提供输入的发送进程,以字符流方式将大量的数据送入管道,而接收进程从管道中接收数据消息缓冲队列通信机制: 由于消息缓冲机制中所使用的缓冲区为公用缓冲区,因此使用消息缓冲机制传送数据时,两通信进程必须满足如下条件:第一,在发送进程把写入消息的缓冲区挂入消息队列时,应禁... 阅读全文
posted @ 2013-12-05 23:08 技术让梦想更伟大 阅读(465) 评论(0) 推荐(1) 编辑
摘要:如果没有集成开发环境(IDE),在linux下开发程序将非常繁琐,IDE是指将编辑、编译、调试等功能集成在一个桌面环境上,这样就大大方便了用户。IDE一般包括代码编辑器、编译器、调试器和图形界面用户工具。linux下IDE很多,这里笔者要说的是CodeBlocks,CodeBlocks是一个开放源码的全功能的跨平台C/C++语言集成开发环境,其本身不提供编译功能,但能通过调用第三方编译代码,它与Windows下的Visual Studio来发界面非常类似,下面笔者来具体介绍一下开源IDE CodeBlocks的下载安装、配置以及简单编程。 在Ubuntu下,输入下列命令就睡自动安装Cod... 阅读全文
posted @ 2013-12-05 17:48 技术让梦想更伟大 阅读(559) 评论(0) 推荐(1) 编辑
摘要:在传统的操作系统中,进程拥有独立的内存地址空间和一个用于控制的线程。但 是,现在的情况更多的情况下要求在同一地址空间下拥有多个线程并发执行。因此线程被引入操作系统。在引入线程的操作系统中,线程是进程中的一个实体,是被 系统独立调度和分派的基本单位。它的执行环境很小,除了自身必需的堆栈、寄存器、优先级等私有资源外,共享其所属进程的资源。 线程与进程的比较: 线程是对于机器硬件的称呼,相当于生产线;而进程怎是对软件,即程序运行的程序,程序运行的多少叫做进程数。 进程和线程的区别在于:简而言之,一个程序至少有一个进程,一个进程至少有一个线程现在我告诉你如何查看进程和线程:1.打开任务管理器... 阅读全文
posted @ 2013-12-05 00:35 技术让梦想更伟大 阅读(482) 评论(0) 推荐(0) 编辑
摘要:进程调度分为高级、中级、低级调度: 高级调度通常也称作业调度,用于决定把外存上处于后备队列中的哪些作业调入内存,准备执行; 中级调度大多针对于分时系统,是按一定的算法在内存和外存之间进行进程对换,目的在于缓和内存的紧张; 低级调度用于将内存中就绪队列中的作业分配处理机,使其执行。 进程调度通常有以下两种方式:(1)非剥夺方式:分派程序一旦把处理机分配给某进程后便让它一直运行下去,直到进程完成或发生某事件而阻塞时,才把处理机分配给另一个进程。(2)剥夺方式:当一个进程正在运行时,系统可以基于某种原则,剥夺已分配给它的处理机,将之分配给其它进程。剥夺原则有:优先权原则、短进程优先原则、... 阅读全文
posted @ 2013-12-04 23:54 技术让梦想更伟大 阅读(1260) 评论(0) 推荐(0) 编辑
摘要:程之间互相竞争某一个资源,这种关系就称为进程的互斥,也就是说对于某个系统资源,如果一个进程正在使用,其他的进程就必须等待其用完,不能同时使用。 并发进程使用共享资源时,除了竞争之外有协作,要利用互通消息的办法来控制执行速度,使相互协作的进程正确工作。进程之间的相互合作来完成某一任务,把这种关系称为进程的同步.操作系统中将一次只允许一个进程访问的资源称为临界资源。一个含有访问某一临界资源的循环进程可描述如下: while(TRUE) { entry section critical section exit section remainder section } 对进程的互斥和同步,操作... 阅读全文
posted @ 2013-12-04 15:29 技术让梦想更伟大 阅读(746) 评论(0) 推荐(0) 编辑
摘要:进程的基本概念包括4个方面:1.程序的顺序执行和并发执行,这里包括3个方面,所谓程序的顺序执行是指该程序独占整个系统中的所有资源,处理机严格按照程序所规定的顺序进行操作,只有在前一个操作执行完后,才进行后继操作;多道程序设计的引入;并发执行即指一个程序段的执行尚未结束,另一个程序段的执行已经开始的执行方式。2.进程的定义和特征,定义: 进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。特征:结构特征、动态性、并发性、独立性、异步性3.进程的状态及其转换,基本状态:就绪状态、执行状态、阻塞状态状态转换:进程的3种基本状态及其转换如下图4。进程的结构,进程的实体:进程控制块(PCB) 阅读全文
posted @ 2013-12-04 14:30 技术让梦想更伟大 阅读(635) 评论(0) 推荐(0) 编辑
摘要:今天我又彷徨路上看着冷漠的人群和夕阳心中泛起那些过往刹那间眼泪不停的流淌昨天曾经年少轻狂奋不顾身为爱疯狂依稀想起你的模样依然给我温暖和忧伤我想回到那自由自在青春的时光不回头的奔跑和狂想我想站在那蓝天大海放声的歌唱就像青春一样怒放生命充满告别和绝望生活充满迷惘和渴望多少次失去自我和主张多少次梦到... 阅读全文
posted @ 2013-12-04 12:19 技术让梦想更伟大 阅读(120) 评论(0) 推荐(0) 编辑
摘要:来总结一下操作系统,也是常用的i一些知识。操作系统是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。 操作系统是用户和计算机的接口,同时也是计算机硬件和其他软件的接口。操作系统的功能包括管理计算机系统的硬件、软件及数据资源,控制程序运行,改善人机界面,为其它应用软件提供支持等,使计算机系统所有资源最大限度地发挥作用,提供了各种形式的用户界面,使用户有一个好的工作环境,为其它软件的开发提供必要的服务和相应的接口;在这里介绍操作系统的目标和功能、操作系统的发展、主要的成就等。 目标和功能: 操作系统是管理... 阅读全文
posted @ 2013-12-04 09:32 技术让梦想更伟大 阅读(299) 评论(0) 推荐(0) 编辑
摘要:这两天开始看了操作系统这本书,主要是因为学习linux时要对操作系统有一定的了解,而操作系统也是许多课程的基础,看了之后才明白好多都是计算机基础里面的内容,而且对一些系统的构成、处理器寄存器、指令的执行、中断、存储器的层次机构、I/O通信技术都有了一定的了解,这里需要总结一下计算机系统的一些基本知识。 计算机的基本构成可以如下图所示:而微型计算机的构成可表示如下:微型计算机系统的构成如下:计算机系统是以形式和计算机沟通的一种可视化的窗口。计算机系统是由硬件系统和软件系统两大部分组成的: 硬件系统一般指用电子器件和机电装置组成的计算机实体,是指物理上存在的机器部件。 一般地讲,软件系... 阅读全文
posted @ 2013-12-03 15:53 技术让梦想更伟大 阅读(1066) 评论(0) 推荐(0) 编辑
摘要:在此之前先说一下autooconf在linux下安装的问题,因为不知道怎么安装,我就直接在终端上输入autoconf,结果它会提示是否安装它,下面还有指定安装的方法,我 就直接输入,是什么命令记不住了,反正很简单,然后说要额外大概2M的内存就够了,之后就需要等待安装了,安装完成之后就可以 运用以下的一些功能了。 如何使用autoconf和automake两个工具来帮助我们自动地生成符合自由软件惯例的Makefile, 这样就可以象常见的GNU程序一样,只要使用“./configure”,“make”,“make instal”就可以把程序安装到Linux系统中去了. Makefile经... 阅读全文
posted @ 2013-12-02 11:22 技术让梦想更伟大 阅读(2467) 评论(0) 推荐(0) 编辑
摘要:高质量学习资源免费获取,专注但不限于【Linux】【C/C++/Qt】【FPGA】【数据结构与算法】, 根据多年技术经验纯【原创】,纯【干货】,分享【技术心得】,力求【授人以鱼,更授人以渔】。 Poisson分布的累积概率值 命令:poisscdf 格式:poisscdf (k, Lambda) P 阅读全文
posted @ 2013-12-01 21:43 技术让梦想更伟大 阅读(2497) 评论(0) 推荐(0) 编辑
摘要:“崇洋媚外”这个词倘若用兰波的诗来翻译,必定是那最出名的一句“生活在远方”。“洋”和“外”诚然指的是西洋和外国,但我们不妨往大里解读:“洋”是异域,是神秘;“外”是遥远,是未知,这可不就是“远方”的全部含义了?“洋”和“外”可不就是“远方”这个内涵最恰当的外延?撇开其他各种不谈,光只这一点理由,人们“崇洋”,人们“媚外”也都无可厚非了。从这个角度讲,“崇洋媚外”恰恰是褒义词,是无可指摘的。如若不是这样,当年海涅欲“乘着歌声的翅膀”,“向着恒河的原野”,飞往“最美的地方”,可不就要被斥为“崇洋媚外”了? 我就是个顶“崇洋媚外”的人,喜欢极了外国文学。从小就惊异于课本里长长的外国名字,中学以... 阅读全文
posted @ 2013-12-01 01:04 技术让梦想更伟大 阅读(372) 评论(2) 推荐(0) 编辑