02 2015 档案
摘要:现在在Linux 中使用较多的进程间通信方式主要有以下几种。(1)管道(Pipe)及有名管道(named pipe):管道可用于具有亲缘关系进程间的通信,有名管道,除具有管道所具有的功能外,它还允许无亲缘关系进程间的通信。(2)信号(Signal):信号是在软件层次上对中断机制的一种模拟,它是比较复...
阅读全文
摘要:Linux 中的进程包含3个段,分别为“数据段”、“代码段”和“堆栈段”。· “数据段”存放的是全局变量、常数以及动态数据分配的数据空间(如malloc 函数取得的空间)等。· “代码段”存放的是程序代码的数据。· “堆栈段”存放的是子程序的返回地址、子程序的参数以及程序的局部变量。Linux 下的...
阅读全文
摘要:标准 I/O 提供流缓冲的目的是尽可能减少使用read和write调用的数量。标准I/O 提供了3 种类型的缓冲存储。· 全缓冲。在这种情况下,当填满标准I/O 缓存后才进行实际I/O 操作。对于驻在磁盘上的文件通常是由标准I/O 库实施全缓冲的。在一个流上执行第一次I/O 操作时,通常调用mall...
阅读全文
摘要:当多个用户共同使用、操作一个文件的情况,这时,Linux 通常采用的方法是给文件上锁,来避免共享的资源产生竞争的状态。文件锁包括建议性锁和强制性锁。建议性锁要求每个上锁文件的进程都要检查是否有锁存在,并且尊重已有的锁。在一般情况下,内核和系统都不使用建议性锁。强制性锁是由内核执行的锁,当一个文件被上...
阅读全文
摘要:/*stepmotor.h*/#ifndef _STEPMOTOR_H#define _STEPMOTOR_H#include "sys.h"#include "delay.h"#define AA PDout(8) #define aa PDout(9)#define BB PDout(10) #...
阅读全文
摘要:1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 void main(void) 9 {10 int fd,size,len;11 char *buf="Hel...
阅读全文
摘要:以该程序为例: 1 /*test.c*/ 2 #include 3 int sum(int m); 4 int main() 5 { 6 int i,n=0; 7 sum(50); 8 for(i=1; iThis is free software:...
阅读全文
摘要:#includeint main(){ printf("Hello world !\n"); return 0;}1.预处理阶段[ht@localhost hello]$ gcc -E hello.c -o hello.iGcc进行预处理,把“stdio.h”的内容插入到...
阅读全文
摘要:第一个php程序" ; /* 多行注释 */ #shell脚本风格注释 $boo = true ; if ($boo == true) { echo '变量$boo为真' ."" ; } $str = '字符串' ; echo...
阅读全文
摘要:具有输入和输出参数的嵌入汇编的基本格式为:asm(“汇编语句” : 输出寄存器 : 输入寄存器 : 会被修改的寄存器 );在执行代码时,如果不希望汇编语句被gcc 优化而挪动地方,就需要在asm 符号后面添加volatile 关键词: asm volatile (……);或者更详细的说明为: ...
阅读全文
摘要:设计用于系统编程的系统寄存器主要包括以下几类:标志寄存器EFLAGS, 内存管理寄存器, 控制寄存器, 调试寄存器, 测试寄存器。系统标志寄存器EFLAGS 控制着I/O、可屏蔽中断、调试、任务切换以及保护模式和多任务环境下虚拟8086 程序的执行。内存管理寄存器有4 个,用于分段内存管理:• GD...
阅读全文
摘要:回校后要进行校电子设计竞赛,把以前做过的温控系统PID算法重温下。 比例(P)、积分(I)、微分(D)控制算法各有作用:比例,反应系统的基本(当前)偏差e(t),系数大,可以加快调节,减小误差,但过大的比例使系统稳定性下降,甚至造成系统不稳定;积分,反应系统的累计偏差,使系统消除稳态误差,提高无差度
阅读全文
摘要:S3C2410/2440 MCU内部都集成了LCD控制器,通过LCD控制器就可以产生LCD驱动器所需要的控制信号来控制STN/TFT屏了。LCD控制器主要由REGBANK,LCDCDMA,VIDPRCS,TIMEGEN等寄存器组成,如果不是用的三星的LCD,LPC3600和LCC3600就不用管它,...
阅读全文
摘要:K9F2G08U0A没有地址或数据总线,只有8个IO口,这8个IO口用于传输命令、地址和数据。NandFlash的存储单元是由Block组成的,Block又是由Page组成的,数据就是存储在Page上。K9F2G08U0A的总容量是256M,由图可以看出,它一共有2048块,每一块有64页,每一页有...
阅读全文
摘要:vector 是同一种类型的对象的集合,每个对象都有一个对应的整数索引值,我们把 vector称为容器,是因为它可以包含其他对象,一个容器中的所有对象都必须是同一种类型的,vector 是一个类模板(class template)。 使用 vector 之前,必须包含相应的头文件 #include
阅读全文
摘要:cin(标准输入),cout(标准输出),cerr(不带缓存的标准错误输出),clog(带缓存的标准错误输出)。文件读写操作,分别为:ifstream(读文件),ofstream(写文件),fstream(读写文件)字符串作为输入输出流进行处理,分别为:istringstream(字符串输入流),o...
阅读全文
摘要:模板定义:模板就是实现代码重用机制的一种工具,它可以实现类型参数化,即把类型定义为参数,从而实现了真正的代码可重用性。模版可以分为两类,一个是函数模版,另外一个是类模版。函数模板针对仅参数类型不同的函数;类模板针对仅数据成员和成员函数类型不同的类。注意:模板的声明或定义只能在全局,命名空间或类范围内...
阅读全文
摘要:异常的抛出和处理主要使用了以下三个关键字: try、 throw 、 catch 。抛出异常即检测是否产生异常,在C++中,其采用throw语句来实现,如果检测到产生异常,则抛出异常。如果在try语句块的程序段中(包括在其中调用的函数)发现了异常,且抛弃了该异常,则这个异常就可以被try语句块后的某...
阅读全文
浙公网安备 33010602011771号