自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 资源 (5)
  • 收藏
  • 关注

原创 硬中断、软中断和信号

硬中断是外部设备对CPU的中断,软中断是中断底半部的一种处理机制,信号则是由内核(或其他进程)对某个进程的中断。 ①硬中断是由外部事件引起的因此具有随机性和突发性;   软中断是执行中断指令产生的,无面外部施加中断请求信号,因此中断的发生不是随机的而是由程序安排好的。②硬中断的中断响应周期,CPU需要发中断回合信号(NMI不需要);   软中断的中断响应周期,CPU不需发中断回

2015-10-06 11:12:24 1124

原创 系统调用,进程切换

模式切换  不等同于  进程上下文切换当进程调用系统调用或者发生中断时,CPU从用户模式(用户态)切换成内核模式(内核态),此时,无论是系统调用程序还是中断服务程序,都处于当前进程的上下文中,并没有发生进程上下文切换。当系统调用或中断处理程序返回时,CPU要从内核模式切换回用户模式,此时会执行操作系统的调用程序。如果发现就需队列中有比当前进程更高的优先级的进程,则会发生进程切换:当前进

2015-09-10 19:46:49 6338 4

原创 CPU时间

用户CPU时间:用户态进程执行时间。系统CPU时间:内核态进程执行时间。CPU时间:用户CPU时间+系统CPU时间。时钟时间(墙上时钟时间):和系统中同时运行的进程数有关,可能发生阻塞等。为阻塞+就绪+运行时间的总和。

2015-09-10 15:05:59 536

原创 素数的验证范围到数的开方

假设范围大于数的开方,则另个数必定小于数的开方。若两个数都大于数的开方,则相乘必定大于这个数。所以只需要验证2到这个数的开方范围内就可以。

2015-08-29 15:22:12 555

原创 给定数组的子数组最大和

#include #include  int maxSum(int* a,int n) {        int sum=0;//其实要处理全是负数的情况,很简单,如稍后下面第3点所见,直接把这句改成:"int sum=a[0]"即可//也可以不改,当全是负数的情况,直接返回0,也不见得不行。      int b=0;      for(int i=0

2015-08-28 15:37:42 330

原创 链接属性和存储类型

链接属性全局变量和函数具有external链接属性,其余标识符的链接属性则为none。static关键字可以使链接属性变为internal,而且static只对缺省链接属性为external的声明才有改变链接属性的效果。存储类型有三个地方可以用于存储变量:普通内存、运行时堆栈、硬件寄存器。变量的缺省存储类型取决于它的声明位置:一:凡是在任何代码块之外声明的变量总是存储于静态

2015-08-25 23:33:42 399

原创 被调用函数与堆栈

1) 在栈上创建。在执行函数时,函数内局部变量的存储单元都在栈上创建,函数执行结束时这些存储单元自动被释放。     栈内存分配运算内置于处理器的指令集中,一般使用寄存器来存取,效率很高,但是分配的内存容量有限。2) 从堆上分配,亦称动态内存分配。程序在运行的时候用malloc或new申请任意多少的内存,程序员自己负责在何时用       free或delete来释放内存。动态内存的生存期

2015-08-25 16:06:59 252

原创 求pi的小数点后800位

#include   #include   long a=10000,b,c=2800,d,e,f[2801],g;  int main()  {          for(;b-c;)          f[b++]=a/5;        for(;d=0,g=c*2;c-=14,printf("%.4d",e+d/a),e=d%a)        for(

2015-08-24 22:14:32 465

原创 查找整数组成字符串的下一个字符串

一般而言,设P是[1,n]的一个全排列。      P=P1P2…Pn=P1P2…Pj-1PjPj+1…Pk-1PkPk+1…Pn    find:  j=max{i|Pi1}    k=max{i|Pi>Pj}      1, 对换Pj,Pk,      2, 将Pj+1…Pk-1PjPk+1…Pn翻转P’= P1P2…Pj-1PkPn…Pk+1PjPk-1…

2015-08-24 22:10:55 279

原创 共享文件

其中描述符表是每个进程拥有的。打开文件表和v-node表是所有进程共享的。当fork复制了描述符表后需要在子进程中关闭他们。

2015-08-22 21:43:34 239

原创 算术移动和逻辑移动

算术左移、逻辑左移、算术右移、逻辑右移有什么不同?算术左移:末尾添0;逻辑左移:末尾添0;算术右移:左端最低位填充;逻辑右移:左端添0。 算术左移和算术右移主要用来进行有符号数的倍增、减半;逻辑左移和逻辑右移主要用来进行无符号数的倍增、减半. 算术左移和算术左移虽然方式是一样的,但他们表示的移位后数的范围是不一样的,有符号数左移(算术左移)位后的范围是-128—

2015-08-18 23:03:37 1260

原创 32位与64位平台

char a=0xff;32位扩展变量a为整型则为0xffffffff;64位扩展变量a为整型位0xffffffffffffffff;

2015-08-18 20:52:27 365

原创 可重入函数与不可重入函数

主要用于多任务环境中,一个可重入的函数简单来说就是可以被中断的函数,也就是说,可以在这个函数执行的任何时刻中断它,转入OS调度下去执行另外一段代码,而返回控制时不会出现什么错误;而不可重入的函数由于使用了一些系统资源,比如全局变量区,中断向量表等,所以它如果被中断的话,可能会出现问题,这类函数是不能运行在多任务环境下的。 也可以这样理解,重入即表示重复进入,首先它意味着这个函数可以被中断,其次意味

2015-08-18 20:48:28 261

原创 linux内存分配方法

基于linux 驱动开发以及应用开发. 当想要分配内存的时候,要面对很多的内存分配函数: malloc、 kmalloc、 vmalloc、 alloc_page、 dma_alloc  ...简单归纳如下:malloc: 分配用户空间内存 .不保证物理连续.linux中用户空间和内核空间不能直接互相访问内存,要通过copy_from_user 、copy_to_user 或者mmap影射

2015-08-18 16:57:52 636

原创 进程与线程区别

进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。线程是进程的一个实体, 是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源。一个线程可以创建和撤销另一个线

2015-07-16 16:57:36 210

原创 tcp/ip基本概念

TCP/IP协议的工作流程如下: ●在源主机上,应用层将一串应用数据流传送给传输层。  ●传输层将应用层的数据流截成分组,并加上TCP报头形成TCP段,送交网络层。 ●在网络层给TCP段加上包括源、目的主机IP地址的IP报头,生成一个IP数据包,并将IP数据包送交链路层。 ●链路层在其MAC帧的数据部分装上IP数据包,再加上源、目的主机的MAC地址和帧头,并根据其目的MAC地址

2015-07-15 15:23:09 259

原创 哈希表

哈希表对于查找具有优势,这里举一个例子。数组num[5]={1,2,3,4,5,5},首先给定哈希表的长度为10,初始化哈希表,表中的元素包括值和索引值,初始值为-1,索引值为null。hashtable [ num [ i ] ].index = i。对于数组中相同的数,在其hashtable [ ]下插入对应的链表。

2015-07-14 15:39:26 223

原创 Unix网络编程中第一个例子出现connect error: Connection refused

这个问题我来回答,linux 现在因为安全问题,各个发行版本默认是不开daytime服务的。由于要打开端口,所以服务端程序需要用root权限执行,所以你可以先 sudo ./daytimetcpsrv然后再开一个终端运行 ./daytimetcpcli 就可以看到返回的时间了

2015-07-07 22:38:45 1037

转载 信号量、互斥体和自旋锁

转至:http://www.cnblogs.com/biyeymyhjob/archive/2012/07/21/2602015.html一、信号量      信号量又称为信号灯,它是用来协调不同进程间的数据对象的,而最主要的应用是共享内存方式的进程间通信。本质上,信号量是一个计数器,它用来记录对某个资源(如共享内存)的存取状况。一般说来,为了获得共享资源,进程需要执行下列操作: 

2015-07-07 22:09:21 204

OpenCodecSetup.zip

potplayer播放某些mkv视频文件时,显示DirectX未安装或音频被禁止信息时,安装本软件即可正常播放。支持mkv等视频音频播放

2019-06-21

uboot代码分析

uboot代码详细分析,u-boot-1.1.6之cpu/arm920t/start.s分析

2014-03-20

BootLoader技术内幕

本文详细地介绍了基于嵌入式系统中的 OS 启动加载程序 ―― Boot Loader 的概念、 软件设计的主要任务以及结构框架等内容

2014-03-08

触摸屏知识大全

触摸屏由于其坚固耐用、反应速度快、节省空间、易于交流等诸多优点得到大众的认同。根 据iSuppli 公布的全球触摸屏市场的最新调查,触摸屏06年的总供货额达到24亿美元,预 计2012年将增至06年的1.8倍,即达到44亿美元。显而易见,这是一个飞速成长的巨大 市场。特别是在苹果iPhone 的明星作用带动下,触摸屏在手机、电脑等消费电子产品中日 益普及。本PDF将为你搜集来自电子工程专辑、媒体播放器网站以及互联网上的一些关于 触摸屏的知识,希望能帮助到各位工程师朋友。

2014-03-08

基于PIC单片机的WIFI控制系统

基于PIC单片机的WIFI控制系统

2013-05-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除