- 博客(46)
- 资源 (2)
- 收藏
- 关注
原创 gedit插件配置
<br />使用gEdit搭配terminal来写程序也有一段时间了,但一直当它是windows下的notepad,没有好好熟悉下它,今天无意中发现原来 gEdit也可以打造一个不错的编程环境。这里对相关的资料收集总结了一下,与大家共享。<br />gEdit是GNOME桌面环境中默认的文本编辑器,它 简单易用,对中文支持良好,支持多种字符编码,同时具有开放的插件支持特性。通过安装插件,作一些简单的设置,gEdit就可以做为一个简洁的编程环境。 在我的ubuntu 8.04下,默认情况只安装了gedit包,
2011-01-13 11:18:00
8533
转载 Ubuntu远程控制Windows XP系统
<br /><br />首先安装Linux 下远程桌面客户端软件-rdesktop<br />1. 打开终端<br />2, 执行sudo apt-get install rdesktop<br />3. 远程连接XP 系统(前提是windows xp 必须打开并且允许远程用户登录)<br />4.rdesktop serverIP 或者rdesktop serverIP:Port<br />在终端输入<br />rdesktop 192.168.0.3:4747<br />如下图所示:<br /><br
2011-01-11 09:35:00
1206
转载 pmtest2.asm 保护模式2
<br />参考于渊的《自己动手写操作系统》第三章中从实模式切换到保护模式,最后有重新<br />切回实模式的代码(代码如下),其中有几点不太明白的,参考其他文章之后在此记录一下。<br /><br /><br />其中还有不太明白的地方,希望大家能在下面 留个言帮我讲明白,谢谢。<br /><br />下面代码有些宏定义没贴出来,应该能看明白。 1; ==========================================<br /> 2; pmtest2.asm<br /> 3; 编译
2010-10-25 23:17:00
1212
原创 内核学习FAQ大集锦- -
<br />1. 请推荐一些好的Linux内核参考书? <br />a.《Linux Device Drivers, Second Edition》,有中文译本 <br />b.《Understanding the Linux Kernel, 2nd Edition》 <br />c.《Linux内核源代码情景分析》,分上下两册 <br />d.《边干边学-Linux内核指导》 <br />e.《Linux内核2.4版源代码分析大全》 <br />注:a和b的电子版都可从http://mail.ustc.e
2010-10-25 16:13:00
630
转载 《自己动手写操作系统》读书笔记——初识保护模式
<br />书本第三章第一节是《认识保护模式》,初步讲解了保护模式下全局描述符表GDT、段描述符、段选择子、从实模式进入保护模式等内容。去年看这个的时候,如果不是有以前学习保护模式时做的笔记,还真不好懂呢,因为作者提供的材料不够系统,对仅学习过8086汇编语言的人来说,是不太好理解的。下面的内容大体以我以前做的笔记为纲,较为简略,只说明要点。(本来还可以参考下以前学习保护模式时收集的资料的,很可惜,移动硬盘坏了,资料都没有了,早就该注意信息安全了的。)描述符与描述符表<br /> 8086是16位处
2010-10-25 15:58:00
771
转载 全面剖析《自己动手写操作系统》的pmtest1.asm
<br />段机制轻松体验 <br />内存寻址: <br />实模式下的内存寻址: <br />让我们首先来回顾实模式下的寻址方式 <br />段首地址×16+偏移量 = 物理地址 <br />为什么要×16?因为在8086CPU中,地址线是20位,但寄存器是16位的,最高寻址64KB,它无法寻址到1M内存。于是,Intel设计了这种寻址方式,先缩小4位成16位放入到段寄存器,用到时候,再将其扩大到20位,这也造成了段的首地址必须是16的倍数的限制。 <br />公式:xxxx:yyyy <br />保护
2010-10-25 14:51:00
505
转载 Virtual PC 中安 装ms dos 6.22
<br />在《自己动手写操作系统》中作者的平台是virtual pc 5.0,他使用这个虚拟机来作为开发平台,但是很不幸的是VirtualPC在推出5.2版本后就被Mirosoft给收购了,然后就发挥微软的霸道,让vpc只支持windows了.连dos都支持不好了.<br />注:本文曾经经过精心的排版后准备发布,结果csdn没有提交上去,郁闷啊,这次稍微排了一下版,排的不好大家原谅!<br />注2:本人折腾vpc和vmware长达一天才整理出这篇文章,鉴于网上没有相关的资源,特意写出来供大家参考,转载
2010-10-25 13:28:00
529
转载 解决virtual pc下安装RedHat9.0的花屏问题
<br />出现问题就得解决问题,出现这种问题,我第一感觉就是像素设置问题,我上网查了一下,果然,是由于VPC不支持Linux的24色,只用16色,而Linux默认的是24色<br /><br />1,重启虚拟机VPC,在出现grub后,在安装的系统上面按“e”,然后出现grub的配置文件,按键盘移动光标到第二行“Ker……”,再按“e”,然后在这一行的结尾加上:空格 single,然后按“b”重启,就进入了“单用户模式”。<br /><br />2,进入后在提示符下敲入:vi /etc/X11/XF86C
2010-10-25 13:15:00
583
原创 fopen.c
<br />#include <stdio.h><br />main()<br />{<br />FILE *fp;<br />int c;<br />if((fp=fopen("exist","w"))!=NULL){<br />printf("open success!/n");<br />}<br />fclose(fp);<br />}
2010-10-03 20:48:00
579
原创 串口使用
<br />/****************串口设置函数*************************/<br />int set_opt(int fd,int nSpeed, int nBits, char nEvent, int nStop)<br />{<br />struct termios newtio,oldtio;<br />/*保存测试现有串口参数设置,在这里如果串口号等出错,会有相关的出错信息*/<br />if ( tcgetattr( fd,&oldtio) != 0) {<br
2010-10-03 20:19:00
566
原创 select.c
<br />/*select.c*/<br />#include <fcntl.h><br />#include <stdio.h><br />#include <unistd.h><br />#include <stdlib.h><br />#include <time.h><br />int main(void)<br />{<br />int fds[2];<br />char buf[7];<br />int i,rc,maxfd;<br />fd_set inset1,inset2;<br />s
2010-10-03 13:32:00
566
原创 fcntl_read.c
<br />#include <unistd.h><br />#include <sys/file.h><br />#include <sys/types.h><br />#include <sys/stat.h><br />#include <stdio.h><br />#include <stdlib.h><br />void lock_set(int fd, int type)<br />{<br />struct flock lock;<br />lock.l_whence = SEEK_SET;/
2010-10-03 11:25:00
487
原创 fcntl_write.c
<br />#include <unistd.h><br />#include <sys/file.h><br />#include <sys/types.h><br />#include <sys/stat.h><br />#include <stdio.h><br />#include <stdlib.h><br />void lock_set(int fd, int type)<br />{<br />struct flock lock;<br />lock.l_whence = SEEK_SET;<
2010-10-03 11:22:00
436
原创 write.c
<br />/*write.c*/<br />#include <unistd.h><br />#include <sys/types.h><br />#include <sys/stat.h><br />#include <fcntl.h><br />#include <stdlib.h><br />#include <stdio.h><br />#include <string.h><br />#define MAXSIZE<br />int main(void)<br />{<br />int i,f
2010-10-03 10:17:00
1114
原创 open.c
<br />/*open.c*/<br />#include <unistd.h><br />#include <sys/types.h><br />#include <sys/stat.h><br />#include <fcntl.h><br />#include <stdlib.h><br />#include <stdio.h><br />int main(void)<br />{<br />int fd;<br />if((fd = open("/tmp/hello.c", O_CREAT | O
2010-10-03 10:10:00
664
转载 Protel DXP 从原理图到PCB 的时候怎么老是有Remove Rules?
<br /><br /> 我从原理图到PCB过程中,都要出现这个 Remove Rules 的对话框, 里面把所有的规则都清除了。<br />因此每次我都要手工把这些钩去掉,不知道这是怎么回事?<br /> 按照如下方法可以解决:<br />project/project options打开如下对话框,选中eco genration选项卡,将 remove rules选项改成ignore diffrence就可以了。<br />
2010-07-30 19:38:00
2395
转载 通向 UNIX 天堂的 10 个阶梯
讨论几种可以帮助 C++ 开发人员节省时间的技巧和免费工具。 C++ 开发人员在日常工作中通常要完成多个任务:开发新软件、调试其他人的代码、制订测试计划、为每个计划开发测试、管理衰退软件(regression suite)等等。在多种角色之间频繁转换会消耗大量宝贵的时间。为了帮助缓解这个问题,本文提供 10 种能够有效提高生产力的方法。本文中的示例使用 tcsh version 6,但是提
2010-04-04 20:47:00
751
转载 Unix环境高级编程 第三章习题答案
注,本人初涉linux,阅历有限,代码中固然会有许多弊端,请各位判官 批判 地看。还有,不能保证完全正确,希望大家共同进步,告诉小弟多点编程小技巧,不胜感谢。3.2编写一个于dup2()功能相同的函数,但不实用fcntl().上网搜了一下,竟然搜到同实验室的大牛的代码,基于他的基础,我再写了个。当然不能做到的是原子性,另外知道有一个ioctl,现在还没学到深入,到时再看看用这个函数能不能做。这种实
2010-04-04 20:06:00
3424
2
转载 Unix/Linux中的/dev/fd机制
比较新的unix/linux系统都提供名为/dev/fd的目录,其中有文件0、1、2等文件,打开这些文件,相当于复制这些文件描述符例如:fd=open("/dev/fd/0",mode);等价于fd=dup(0);文件描述符fd和0将共享一个文件表记录项。我们再来做一些试验:在debian下运行以下命令#cd /dev/fd#ls -l总用量 0lrwx------ 1 root root 64
2010-04-04 20:00:00
11402
转载 fcntl函数的简单应用
fcntl函数原型如下:#include #include int fcntl(int fd, int cmd);int fcntl(int fd, int cmd, long arg);int fcntl(int fd, int cmd, struct flock *lock);相关的参数简单介绍如下:其中参数fd表示将要设置的文件描述符,参数cmd表示欲操作的命令。第三个参数总是一个整数,
2010-04-03 16:46:00
1002
转载 linux下《UNIX环境高级编程》(apue2)源码编译出错的处理方法
文章出处:http://www.diybl.com/course/3_program/c++/cppjs/2008617/126036.html相信很多跟我一样想要学习unix编程的朋友在兴冲冲拿到《unix环境高级编程》后,准备拿源码练练手时,执行第一个myls就出现一大堆的 错误,这未免时个不小的打击。今天把解决方法写下来,第一自己有个记录,第二也帮助那些被同样问题困扰的朋友尽快的进入li
2010-04-03 14:25:00
2323
转载 APUE源码编绎及执行
以下是APUE第二版和第一版源码的编绎和执行过程:1. Advanced Programming in the UNIX® Environment: Second Edition (APUE第二版) a. 进入APUE网站下载Source code: src.tar.tar。 b. 当前压缩包路径/APUEDIR/,解压并进入源码目录apue.2e。
2010-04-03 13:53:00
4398
原创 7.位运算
1.位运算符&(1)参与 运算的两数对应的二进位相与(2)如果两个相应的二进位均为1 则该两位的按位与结果为1(3)否则 则两位的按位与结果为0|(1)参与运算的两数对应的二进位相或(2)如果两个相应的二进位中有一个位为1 则该两位按位或的结果为1(3)否则若两个位全为0 则该两位的按位或结果为0^(1)参与运算的两数对应的二进位相异或(2)如果两个相应
2010-03-25 15:25:00
698
原创 6.结构体与联合
1.结构体类型的定义定义一个结构体的一般形式为:struct 结构名{成员表列};2.顶一个结构体类型变量的三种方法struct 结构名{成员表列};struct 结构名 结构体变量名1,结构体变量名2,...;struct 结构名{成员表列}变量名表列;struct {成员表列}变量名表列;3.结构体变量的引用方法引用结构体变量中成员的方式为:
2010-03-24 09:32:00
566
原创 4.预处理命令
概述对一个源文件进行编译时 系统先要自动引用预处理程序对源程序中的预处理命令做相应的处理 处理后自动地进入源程序进行编译它分为 宏定义 文件包含 条件编译宏定义及其分类不带参数的宏定义 字符串一般形式 #define 标识符 字符串 用一个指定的标识符来表示一个字符串 字符串可以是常数、表达式、格式串等宏定义的嵌套 可以直接引用已定义的宏名 如果要提前
2010-03-21 13:49:00
557
原创 5.数组与指针
数组的概念数组是有序的数据集合 属于构造数据类型 要求足足中的每一个数据元素类型相同 维数可划分为1维和多维数组一维数组在物理空间分配上 系统在内存中为一维数组分配一段连续的空间定义 类型说明符 数组名 [常量表达式]对于数组类型说明要注意一下几点:1.数组的类型实际上是指数组原属的取值类型。同一个数组的所有元素的数据类型都是相同的。2.在编写程序时,数组名的
2010-03-21 13:49:00
1062
1
原创 2.C的基本语句
变量的定义、类型的声明以及库文件的包含都不属于C语句的 而对于C程序中调用的函数,函数的声明部分不属于C语句,函数的执行部分由语句构成一个程序分为数据描述和数据操作 前者是声明 后者是由语句来实现控制语句分支语句 if switch循环 do while while for转向 break goto continue return函数调用语句pri
2010-03-21 13:48:00
384
原创 3.函数
函数概述库函数和用户定义函数 有返回值函数和无返回值函数 有参函数和无参函数函数的定义函数的调用实参的求值顺序为自右至左函数的返回值 return void函数的参数形参 实参 值传递 单向 实参将数据传递给形参 形参的一切改变都不影响实参的值函数的嵌套调用C中函数不允许嵌套定义 但是函数可以嵌套调用函数的递归调用是指一个函数在它的函
2010-03-21 13:48:00
414
转载 Ubuntu9.04下安装KScope
因为ubuntu9.04的源里没有kscope,所以需要下载,有两个不同的安装包,可以随便下载安装:1.kscope1.9.4的deb包下载地址:https://launchpad.net/~nizamov-shawkat/+archive/ppa/+files/kscope_1.9.4-0ubuntu1_i386.deb这个版本下载完只要直接安装就可以用2.如果不习惯1.9.4版的,可以在下面链
2010-03-21 13:47:00
374
原创 1.数据类型和运算符
常量 以字符形式出现的 a,以字符串出现的如“this is a test” 可用标识符来代替变量 变量名 变量值 变量所占的内存空间标识符 由字母,数字,下划线组成 第一个字符为字母或下划线C语言中的关键字 auto double int struct break else long switch case enum register typedef char exter
2010-03-21 13:47:00
438
原创 VMware下ubuntu 9.10 安装VMtools (本人备忘)
菜单栏下点虚拟机-安装VMware Tools-进入linux1.在终端下输入 cd/media/cdrom02.ls3.tar zxvf VMwareTools-6.00-45731.tar.gz -C/tmp4.cd /tmp/VMware-Tools-destrib5.sudo ./VMware-install.pl
2010-03-21 13:46:00
600
原创 远程登录工具C-kermit
确保linux可以上网 然后在命令行下输入sudo ap-get install ckermit使用kermit之前,现在/home/book下新建一个名为 .kermrc的配置文件set line /dev/ttyS0set speed 115200set carrier-wactch offset handshake noneset flow-control n
2010-03-21 13:45:00
600
原创 使用Jlink仿真及ADS1.2调试(ok2440)
1.将Jlink PC ok2440连接起来2.给ok2440上电3.打开Jlink程序中的J-link ARM v4.08k(可观察到jlink的型号及CPU的各种参数) 并打开DNW 按任意键不要让开发板进入操作系统4.打开ADS CodeWarrior for ARM 载入镜像 可先将工程中的code值先去除 project-remove project code 在点ma
2010-03-21 13:44:00
4283
转载 ubuntu 9.10下安装arm-linux-gcc-4.3.2
最近重新硬盘安装了ubuntu9.04并升级到9.10就重新建立交叉编译环境arm-linux-gcc-4.3.2。将友善科技光盘的arm-linux-gcc-4.3.2.tgz复制到任意路径下,我装的是双系统,现在ubuntu9.10已近很好的能管理硬盘了,这个得益于palimpsest硬盘实用工具,记得9.04版本时我的几个xp 的分区都能挂载,但识别它们的名字都是乱码,很不爽,现在可好了
2010-03-21 13:43:00
3715
原创 开发板连接并口的注意点(本人备忘OK2440--IBM R52)
开机按F2 F8进入bios configure -parallel port -mode-回车 选ECP 出现一个地址记住 3BC在进入H-jatg软件中设置LPT PORT setting 输入3BC test 成功
2010-03-21 13:43:00
712
转载 ubuntu9.10构建nfs服务器端
具体而言:在ubuntu9.10构建nfs服务器端,在ARM上构建客户端,这样便于开发。先引用别人的做法:1、进行NFS服务器端与客户端的安装:sudo apt-get install nfs-kernel-server nfs-common portmap安装客户端的作用是可以在本机进行NFS服务的测试。2、配置portmap两种方法任选一种就可以:(1):sudo gedit /et
2010-03-21 13:42:00
1404
1
转载 WebQQ桌面化
一开始用ubuntu的时候,朋友推荐eva,但现在eva一直存在登录问题。腾讯官方也推出了linux版本的QQ,功能一般,但刚推出的时候给了linux用户无比的兴奋,客户端版本也更新过两三次,但功能始终是仅仅是聊天而已,发现webqq后,感觉世界一片光明。但是只要开QQ就要开这浏览器,很不爽,网上看到有人用firefox的插件prism和alltray来实现webqq的桌面话,还可以最小
2010-03-21 13:41:00
2361
原创 QT的编程(OK2440)
将cross-2.95.3.tar.bz2放到/usr/local/arm下tar -jxvf cross-2.95.3.tar.bz2export PATH=/usr/local/arm/2.95.3/bin:$PATHarm-linux-gcc -vtar -zxvf qtopia-free-src-2.2.0.tar.gztar -zxvf e2fsprogs-1.40.
2010-03-21 13:39:00
1176
3
转载 VMWare里Linux使用MINICOM实现与开发板的通讯
最近在一些嵌入式开发群里面或者论坛上看见一些朋友在讨论怎么在虚拟机里面使用minicom与开发板通讯,毕竟还有好多像我这样在虚拟机里面用Linux的朋友。下面的方法仅是本人暂时使用并且还能行得通的方法,希望大家还能找到更好的方法,不过别忘了也给小弟通知一下啊,记得开源精神哦,? 开始之前先说一下自己的系统吧,其实没什么特别的估计大家也都是用这些吧。 VMWare5.5 Re
2010-03-21 13:38:00
1154
考研英语贬义词+褒义词词汇汇总
2012-03-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人