付沿安 的博客.欢迎您的到来.



[转载]Mysql安装(5.0)
yananfu 发表于 2007-5-24 16:19:00
1. 从http://www.mysql.com下载二进制版的Mysql安装包 //这个MYSQL是二进制版的,不用编译 2. # chmod 755 mysql-standard-5.0.15-linux-gnu-i686-glibc23.tar.gz
// 3. # tar xfz mysql-standard-5.0.15-linux-gnu-i686-glibc23.tar.gz //将解压后生成的目录,复制到/usr/local/下并改名为mysql 4. # groupadd mysql
# useradd mysql -g mysql // 建立mysql组
//建立mysql用户并且加入到mysql组中 5. #
……

阅读全文 | 回复 | 引用通告
 


[学习笔记]字节对齐
yananfu 发表于 2007-3-29 14:12:00

……

阅读全文 | 回复 | 引用通告
 


[学习笔记]volatile的用法
yananfu 发表于 2007-3-23 11:07:00
volatile的本意是“易变的”

由于访问寄存器的速度要快过RAM,所以编译器一般都会作减少存取外部RAM的优化。比如:

static int i=0;

int main(void)
{
...
while (1)
{
if (i) dosomething();
}
}

/* Interrupt service routine. */
void ISR_2(void)
{
i=1;
}

程序的本意是希望ISR_2中断产生时,在main当中调用dosomething函数,但是,由于编译器判断在main函数里面没有修改过i,因此可能只执行一次对从i到某寄存器的读操作,然后每次if判断都只使用这个寄存器里面的“i副本”,导致dosomething永远也不会被调用。
……

阅读全文 | 回复 | 引用通告
 


[学习笔记]NAPI 技术在 Linux 网络驱动上的应用和完善
yananfu 发表于 2007-3-20 16:24:00

……

阅读全文 | 回复 | 引用通告
 


[转载]mmap 和 DMA
yananfu 发表于 2007-1-29 16:11:00
本章将深入探讨 Linux 内存管理部分,并强调了对设备驱动程序编写者非常有帮助的技术重点。这一章内容属于高级主题,不需要所有人都掌握它,虽然如此,很多任务只能通过更深入地研究内存管理子系统而做到,同时本章也帮助读者了解内核重要组成部分的工作方式。

本章内容分为三节。第一节讲述了 mmap 系统调用的实现,mmap允许直接将设备内存映射到用户进程的地址空间中。然后我们讨论内核 kiobuf 机制,它能提供从内核空间对用户内存的直接访问,kiobuf 系统可用于为某些种类的设备实现"裸(raw)I/O"。最后一节讲述直接内存访问(DMA)I/O操作,它本质上提供了外围设备直接访问系统内存的能力。
……

阅读全文 | 回复 | 引用通告
 


[转载](转)Linux设备轮询机制分析
yananfu 发表于 2007-1-29 16:07:00
一、设备轮询机制的基本思想

所谓的设备轮询机制实际上就是利用网卡驱动程序提供的NAPI机制加快网卡处理数据包的速度,因为在大流量的网络环境当中,标准的网卡中断加上逐层的数据拷贝和系统调用会占用大量的CPU资源,而真正用于处理这些数据的资源却很少。

一个基本的想法是对于大流量网络,如果发现一个DMA传输中断(这表明一个网络数据通过DMA通道到达了DMA缓冲区),则首先关闭网卡的中断模式,而对于随后的数据全部采用轮询方式进行接收,这样大大降低了网卡的中断次数,如果轮询发现没有数据包可收或者已经接收了一定数量的数据包,则打开网卡的中断模式,依次类推。
……

阅读全文 | 回复 | 引用通告
 


[转载]零拷贝技术研究与实现方法(转)
yananfu 发表于 2007-1-29 15:57:00
零拷贝技术研究与实现方法[参照8139驱动]

  作者:梁健(firstdot)

  E-MAIL:firstdot@163.com

  感谢王超、史晓龙的共同研究与大力帮助

  一.基本概念

  零拷贝(zero-copy)基本思想是:数据报从网络设备到用户程序空间传递的过程中,减少数据拷贝次数,减少系统调用,实现CPU的零参与,彻底消除CPU在这方面的负载。实现零拷贝用到的最主要技术是DMA数据传输技术和内存区域映射技术。如图1所示,传统的网络数据报处理,需要经过网络设备到操作系统内存空间,系统内存空间到用户应用程序空间这两次拷贝,同时还需要经历用户向系统发出的系统调用。
……

阅读全文 | 回复 | 引用通告
 


[学习笔记]mysql利用mysql_real_connect()函数建立连接client_flag的指定
yananfu 发表于 2007-1-25 9:17:00
mysql_real_connect()函数的功能是连接一个MYSql数据库服务器,其参数列表为:
1.MYSQL结构地址
2.host 主机名或地址
3.user 用户名
4.passwd 密码
5.db 数据库
6.socket 指定套接字
7.client_flag 这个值一般设置为CLIENT_FOUND_ROWS 假如要是执行存储过程的话应指定CLIENT_MULTI_STATEMENTS
解决中文字符问题
先执行:mysql_query(con,"set character set gbk");
再执行语句即可

阅读全文 | 回复 | 引用通告
 


[学习笔记]简单应用:C语言获取时间
yananfu 发表于 2007-1-8 10:16:00
获取系统时间
time_t ltime;
time(<ime);
printf("The System time is %s\n",ctime(<ime));

#i nclude
#i nclude
#i nclude

main()
{
int year,mon,day,hour,min,sec;
time_t timep;
struct tm *p;

printf("please enter the time,like(year/mon/day hour:min:sec)\n");
scanf("%d/%d/%d %d:%d:%d",&year,&mon,&day,&hour,&min,&sec);
while(1)
{
time(&timep);
p=localtime(&timep); /*取得当地时间*/

if((year==1900+p->tm_year)&&(mon==1+p->tm_mon)&&(day==p->tm_mday)&&(hour==p->tm_hour)&&(min==p->tm_min)&&(sec==p->tm_sec))
{
system("test.exe");/*要执行的程序*/
break;

……

阅读全文 | 回复 | 引用通告
 


[转载]最小的Linux系统制作过程详解
yananfu 发表于 2006-12-18 17:04:00
最小的Linux系统制作过程详解 --转载

来源:http://www.linuxfans.org/nuke/modules.php?
……

阅读全文 | 回复 | 引用通告
 


首页 上一页 下一页 尾页 页次:1/5页  10篇日志/页 转到:


<<  < 2007 - >  >>
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31


本站公告

木受繩則直,金就礪則利,君子博學而日參省乎己,則知明而行無過矣。


我的专题

最新日志

最新评论

访客留言

友情链接

Blog信息