2008年10月14日

置顶 原创 [原创]Linux 2.6.27 for ARM9/S3C2410 内核移植笔记

2.6.27是Linux内核的最新版本。昨天中午下载的,用了半天的时间完成了ARM的配置,第一次做Linux移植就出乎意料的顺利,其实这主要得益于Linux内核优良的设计和该版本对ARM处理器近乎完美的支持!  下面把我的整个配置过程与大家分享一下:1. 下载Linux内核: 从 http://www.kernel.org/pub/linux/kernel/v2.6/ 下载最新版的,tar.gz和tar.bz2 均可,我下载的是linux-2.6.27.tar.bz2这个,使用 tar -jxvf linux-2.6.27.tar.bz2 解压缩,cd linux-2.6.27 转到内核代码根目录;2. 下载安装并配置 arm-linux-gcc 工具链: 以前配置过的话,该步可以忽略。我用的是3.4.1版本,建议安装到/usr/local/arm/3.4.1目录下,记得要设置一下工具链程序的搜索目录, export PATH=$PATH:/usr/local/arm/3.4.1/bin 即可;3.阅读全文>

发表于 @ 2008年10月14日 12:14:00|评论(loading...)|举报|收藏

2009年01月30日

原创 [原创]关键词搜索算法改进——顺序表字典二分法逐级检索

问题重述:有一个内含有大约40万条常用词汇的词库。现给定一篇文章,使用这个词库分析出常用词汇的出现次数,并按出现次数由高到低排序这些词语。改进算法的思路:  1. 通常一篇文章所包含的词语远少于词库中40万的数量;  2. 数据库建立索引之后,可采用“二分法”对词语进行快速定位;  3. 逐字缩小查询范围,如果查询到某个字符时范围已经为0,那么可以预测其后的词一定也不存在,(例如查询到forest时已经没有匹配的词了,就可以到此结束)。以下是算法的实现:一、首先,利用文本文件制作词典(二进制文件)。包括导入字符串数据、排序、剔除重复项、创建索引表。字典文件格式描述如下:  1. 文件头(16字节):-----------------------------------------------------------------------------------------| "MAODICT"字符串(8字节) | 索引区开始位置(4字节) | 索引区结束阅读全文>

发表于 @ 2009年01月30日 00:06:00|评论(loading...)|举报|收藏

2009年01月29日

原创 Win2003 + IIS6.0 + PHP5 / ASP + MySQL5 服务器配置及虚拟主机基本安全设置

关键词:Windows 2003, IIS 6.0, PHP, ASP, MySQL, 服务器配置, 虚拟主机安全设置, 跨站攻击IIS + PHP + MySQL 我是在05年配置过一次,之后再也没用过这种搭配。由于Windows2003和IIS6的高安全性使得它实施起来比Apache平台麻烦很多,可能会遇到各种各样的难题,首次配置几乎不可能一次成功。虽然将近有4年没搞IIS下PHP配置了,但一些关键问题还能记得,应朋友的要求帮忙配置服务器,顺便回忆了一遍,现在我把配置方法和需注意的事项说一下,供朋友们参考。(原创文章,转载时请保留链接:http://blog.csdn.net/rssn_net/archive/2009/01/29/3854682.aspx)一、安装IIS 6.0。二、ASP配置: 1. 开启ASP:Windows 2003 IIS 安装后默认不开启ASP。开启的方法是:打开“Internet信息服务器管理器”,在“服务器程序扩展”(Web Service Extension),将“Active Server Pages”改为“允阅读全文>

发表于 @ 2009年01月29日 22:07:00|评论(loading...)|举报|收藏

2009年01月13日

原创 近期百度贴吧乱码问题的原因解析及解决方法

最近几天,百度贴吧发帖频频出现乱码,并伴随 ?#65308; ?#65310; 之类怪异代码。乱码产生的原因:我发现,百度贴吧有意将全角中文标点“<”和“>”替换成相应的html转义代码。两个标点的机内字节码分别为 A3 BC 和 A3 BE (两个字节存储一个汉字),相应的转义代码分别为 < >。但这种替换只是简单的单字节字符串的匹配和替代,并未按汉字编码的双字节进行分割,导致相邻的两个汉字的 [前一个汉字的第二字节] 与 [后一个汉字的第一字节] 极有可能“拼凑”出 A3 BC 或 A3 BE ,倘若将此处的两个字节替换成转义代码,会截断这前后两个汉字,并导致后续的双字节汉字全部错位!例如,“常见”的字节码是 B3 A3 BC FB ,中间的 A3 BC 恰巧是“<”的编码,这两个字节被替换成了<字符串,余下了前面的 B3 和后面的 FB 两个残缺的字节,FB字节再与后面的双字节序列组合,导致后续字节组合全部错位(除非遇到ASCII单字节字符)!如图,第一个窗口是“<>”两个字符的字节码,其中 A3 BC 是“<”的编码;第二个窗口是“常见阅读全文>

发表于 @ 2009年01月13日 21:36:00|评论(loading...)|举报|收藏

2009年01月12日

原创 [原创]一个基于C的简单关键词搜索、统计、排序编程尝试

一个朋友的问题:有一个内含有大约40万条常用词汇的词库。现给定一篇文章,使用这个词库分析出常用词汇的出现次数,并按出现次数由高到低排序这些词语。--------------------------------------------------------------------------------我的做法(最简单但低效的算法):将40万条词汇存为一个文本文件,每行一词。顺序读取词库的每一行,使用strstr()与文章进行匹配,若匹配到,则计数变量加1,并使字符指针后移,继续匹配剩余部分字符串,直到失配或者到达字符串结尾。每个搜索到的词汇(匹配次数大于0)及其匹配状态存入一个线性链表中。将链表数据使用指针数组“排队”,使用qsort()进行排序。贴出C代码:阅读全文>

发表于 @ 2009年01月12日 00:05:00|评论(loading...)|举报|收藏

2009年01月11日

原创 [Linux] GNOME 界面字体美化方案

由于经常进行Linux下的编程开发,因此我选择安装桌面版的Ubuntu。由于Ubuntu是一个多国语言的操作系统,因而不可能自带太多字体,默认安装中文字体只有一种“文泉驿正黑”,这种字体清晰度不够,视觉感较差,使得中文版的Ubuntu界面效果大打折扣,在浏览网页时Firefox显示的字体效果也很差,也使得网页美观程度大打折扣。虽说用户界面的美观对开发人员来说不是必须的(甚至无图形界面也能进行gcc开发),但Linux界面的视觉效果跟Windows的反差太大,实在是很影响心情,在视觉疲倦的心情下工作效率也不会高。因此我决定升级一下字体。阅读全文>

发表于 @ 2009年01月11日 09:57:00|评论(loading...)|举报|收藏

2008年12月20日

原创 "S3C2410移植Linux2.6.27 系统时钟慢8倍!"——解决方法

原帖:http://topic.csdn.net/u/20081125/17/f47176f4-b310-4ae0-b232-ad972fc870e5.htmlrssn_net: 我为S3C2410平台成功移植了2.6.27内核,busybox和文件系统也都做好了,可是我发现系统中所有与时间有关的操作都不正确,延时大约慢8倍,例如,运行 “sleep 1s” 命令,时间为8秒,ping命令的时间间隔也为8秒 我估计是时钟参数不正确,但不知道应该如何修改,请朋友们指正,谢谢! 有没有人遇到同样的问题啊?这个问题实在是困扰我很长时间了~~~-----------------------------------------------------------------回复1:我觉得这个问题是你的bootloader 出了问题,你到bootloader源码里找找 设置时钟的地方去检查一下 ,或许你就发现问题所以啦回复2:请问 楼主的阅读全文>

发表于 @ 2008年12月20日 13:07:00|评论(loading...)|举报|收藏

2008年11月28日

原创 [原创]发一个06年写的“FSO文件浏览器”

这是一个利用FSO集合对象编写的FSO文件浏览器(如果你非要说它是木马,我也不反对),在功能上仿照了“海洋顶端木马”设计,不过代码完全是重写的,没有使用如Shell.Application等容易造成杀毒软件误杀的组件。类似的工具网上有很多,本工具使用价值不是很大,但其中的很多代码自认为写的不错的。主要功能包括:磁盘信息查看磁盘文件浏览 类似WindowsExplorer的操作方式 新建、删除、改名、复制、移动等基本文件操作 文本文件编辑 Stream方式文件下载 精简优化的无组件上传文件打包/解包,一个文件夹可以完整地被打包/解包代码片断:阅读全文>

发表于 @ 2008年11月28日 21:59:00|评论(loading...)|举报|收藏

2008年11月02日

原创 基于S3C2410的CS8900A驱动 for Linux 2.6.27 移植成功

按照2.6.25内核的cs8900驱动移植方法对2.6.27内核中的drivers/net/cs89x0.c文件进行修改,修改的内容完全一样:参考 http://blog.csdn.net/onlyzhangqin/archive/2008/05/25/2479813.aspxLinux内核升级到2.6.27之后,代码结构发生了一些改变,这些改变包括部分变量的命名、一些头文件的文件名和所在的目录等。因此,将CS8900驱动移植到该版本内核时,需要修改多处源码:参考 http://blog.csdn.net/onlyzhangqin/archive/2008/05/25/2479813.aspx1、加入头文件#include ,不然在cs8900_cleanup()函数中使用unregister_chrdev时,会提示未声明;2、在include/asm-arm/arch-s3c2410/下新建smdk2410.h,并且在cs8900.c中包含。内容如下:阅读全文>

发表于 @ 2008年11月02日 21:22:00|评论(loading...)|举报|收藏

原创 [转载]I/O资源如何映射到内核虚拟空间

(1) 系统启动初始化时iotable_init()-----------------------------MACHINE_START(AT91SAM9261EK, "ATMEL AT91SAM9261")············································ .map_io = at91sam9261_map_io,············································MACHINE_END--------------------------------------void __init at91sam9261_map_io(void){ iotable_init(at91sam9261_io_desc, ARRAY_SIZE(at91sam9261_io_desc));}--------------------------------------/* * System peripheral registers mapped a阅读全文>

发表于 @ 2008年11月02日 13:11:00|评论(loading...)|编辑|举报|收藏

Csdn Blog version 3.1a
Copyright © 朝颜