自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 vi命令大全

vi替换使用语法规则:: range s /pat1/pat2/g ,其中: 这是Vi的命令执行界面;range 是命令执行范围的指定: 百分号(%)表示所有行;点(.)表示当前行;美元($)表示最末行; 例如:10,20表示第10到20行,.,$ 表示当前行到最后一行,.+2,$-5 表 示当前行后两行直到全文的倒数第五行s 表示其后是一个替换命令。g 可选标志,带这个标志表示替换将针对

2010-04-30 11:37:00 697

原创 dsp,嵌入式面试题

1、请用方框图描述一个你熟悉的实用数字信号处理系统,并做简要的分析;如果没有,也可以自己设计一个简单的数字信号处理系统,并描述其功能及用途。(仕兰微面试题目)答:2、数字滤波器的分类和结构特点。(仕兰微面试题目)3、IIR,FIR滤波器的异同。(新太硬件面题)4、拉氏变换与Z变换公式等类似东西,随便翻翻书把如.h(n)=-a*h(n-1) b*δ(n) a.求h(n)的z变换;

2010-04-27 17:33:00 3296 4

转载 华为面试题

(1)什么是预编译,何时需要预编译:答案:1、总是使用不经常改动的大型代码体。2、程序由多个模块组成,所有模块都使用一组标准的包含文件和相同的编译选项。在这种情况下,可以将所有包含文件预编译为一个预编译头。(2)char * const p char const * p const char *p 上述三个有什么区别?答案:char * const p;

2010-04-27 16:55:00 1809 1

原创 在ubuntu 8.10下使用kermit

一直使用minicom,很不爽,最近看到韦东山大哥的书上介绍kermit,赶紧换之……一、安装 $sudo apt-get install ckermit二、建立配置文件$cd /home/zbs  (我的目录)$sudo gedit .kermrc  (创建名为.kermrc的文件)在kermrc下添加如下内容:set line /dev/ttyUSB0  (我用

2010-04-23 09:48:00 1110 1

原创 LCD设备驱动程序

帧缓存是linux系统为显示设备提供的一个接口,它将显示缓冲区抽象,屏蔽图像硬件的底层差异,允许上层应用程序在图形模式下直接对显示缓冲区进行读写操作。帧缓存设备为标准字符设备,主设备号为29号,对应/dev/fb%d设备文件。在应用程序中,操作帧缓冲设备的一般步骤如下:1,打开/dev/fb设备文件2.用ioctl操作取得当前显示屏幕的参数3,将屏幕缓冲区映射到用户空间4,

2010-04-23 09:07:00 605

原创 进程调度

进程拥有一个初始的优先级,叫做nice值。该数值变化范围为-20到+19,默认值为0.19优先级最低,-20最高。

2010-04-22 20:13:00 469 1

转载 I2C总线原理

I2C总线的构成及信号类型  I2C总线是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。在CPU与被控IC之间、IC与IC之间进行双向传送,最高传送速率100kbps。各种被控制电路均并联在这条总线上,但就像电话机一样只有拨通各自的号码才能工作,所以每个电路和模块都有唯一的地址,在信息的传输过程中,I2C总线上并接的每一模块电路既是主控器(或被控器),又是发送器(或接收器),这取

2010-04-21 09:22:00 819 1

原创 内核开发的特点

1.内核编译时不能访问C库2.内核编程时必须使用GNU C3.内核编程时缺乏像用户空间那样的内存保护机制。4.内核编程时浮点数很难使用.5.内核只有一个很小的定之长堆栈.6.对于内核支持异步中断,抢占和SMP,因此必须时刻注意同步和并发。7.要考虑可移植性的重要性。

2010-04-20 15:23:00 598

原创 并发及竞态

内核还提供了许多可延迟代码执行的机制:workqueue(工作队列),tasklet(小任务),timer(定时器),设备中断。 

2010-04-19 20:04:00 547

原创 file_operatons 方法清单

struct module *owner        第一个file_operations字段并不是一个操作;相反,它是指向"拥有"该结构的模块的指针。内核使用这个字段以避免在模块的操作正在被使用时卸载该模块。几乎都会被初始化为THIS_MODULE,定义在的宏loff_t (*llseek)(struct file *,loff_t int);        方法llseek用来修

2010-04-16 16:24:00 569

原创 获取主设备号的代码

if(scull_major){    dev=MKDEV(scull_major,scull_minor);    result=register_chrdev_region(dev,scull_nr_devs,"scull");}else{    result=alloc_chrdev_region(&dev,scull_minor,scull_nr_devs,"s

2010-04-16 15:59:00 2604

原创 快速参考

#include 该文件包含驱动程序使用的大部分内核API的定义,包括睡眠函数以及各种变量的声明。struct task_struct *current;//当前进程current->pidcurent->comm//当前进程的进程id和命令名obj-m//有内核构造系统使用的makefile符号,用来确定在当前目录中应构造哪些模块。/sys/module/pr

2010-04-16 13:50:00 578

转载 DECLARE_WAITQUEUE

#define   DECLARE_WAITQUEUE(name,   tsk)       / wait_queue_t   name     =__WAITQUEUE_INITIALIZER(name,   tsk) #define   __WAITQUEUE_INITIALIZER(name,   tsk)   {         task:     tsk,             tas

2010-04-15 16:48:00 5436 1

转载 kmalloc kfree学习笔记

slub中的kmalloc和kfree学习笔记  2.6.26中的内存管理大概分为3个层次 SLUB,伙伴系统和ZONE,其中SLUB在最高层,这里通过分析kmalloc和kfree来分析SLUB的模型,在内存管理中还有NUMA系统,但是NUMA不是必须得,所以以下笔记建立在无SMP和不使用NUMA的环境下,并且不运行DEBU

2010-04-13 17:24:00 19599 2

转载 在ubuntu下添加硬盘分区

前言安装新硬盘这种事情并不会经常,发生同样它也并不复杂.本文将向你说明如何在现有的Ubuntu系统下安装一个新硬盘,并为它设置好分区然后使用它.在动手之前,你需要先考虑下面三个关于新硬盘使用方面的问题: 该硬盘是否只会在Ubuntu下使用? 该硬盘是否要被Ubuntu和windows两类系统使用? 你打算如何分区,是全部空间作一个个分区还是分成数个小分区? 友情提示

2010-04-09 11:52:00 6378

空空如也

空空如也

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

TA关注的人

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