自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Debian环境编译内核

经过将近两天的努力,终于将内核编译成功。现做笔记如下:1.安装好基本系统后,首先要做的是升级刚安装好的基本系统,否则在进行后面步骤的时候会遇到老的内核(我的是2.6.8-2)被移除的麻烦。aptitude updateaptitude dist-upgrade(aptitude比apt-get更稳定,建议用aptitude,但是用aptitude后就尽量不要再用apt-ge

2010-01-02 16:50:00 2860 1

原创 linux下用ssh传输文件

使用Linux登录远程服务器时,可以使用sshfs user@host:dir mountpoint 来挂载远程的目录,这样就可以在本地访问挂载的目录。例如:我要把远程服务器192.168.100252的/home/god目录挂载到本地的~/252目录下,其中god是我在服务器的用户名xhy@xhy-desktop:~$ mkdir 252xhy@xhy-des

2009-12-17 20:45:00 1029

原创 第五章并发和竟态

    在之前的scull例子中,我们都没有考虑并发问题。但是,对并发的管理是操作系统编程中核心的问题之一。早期的linux内核不支持对称多处理(SMP),因此,导致并发执行的唯一原因是对硬件中断的服务。但是随着多核的出现,并发问题将越来越多的出现在我们的程序中,本章就来学习如何处理并发问题。一.并发及其管理竞态通常是作为对资源的共享访问结果而产生的。在设计自己的驱动程序时,第

2009-12-14 22:53:00 957

原创 第三章字符设备驱动(2)—设备操作函数

本节主要学习设备操作函数,open()与release()函数,read()和write()函数。在学习这些函数之前,先学习三个非常重要的数据结构。一.主要数据结构1.文件操作struct file_operations    上一节中,我们已经为自己保留了一些设备编号,但是尚未将任何驱动程序操作连接到这些编号。file_operations结构就是用来建立这种连接的。

2009-12-07 22:55:00 980

原创 第三章字符设备驱动(1)--分配和释放设备号

一.主设备号和次设备号    主设备号表示设备对应的驱动程序;次设备号由内核使用,用于正确确定设备文件所指的设备。内核用dev_t类型()来保存设备编号,dev_t是一个32位的数,12位表示主设备号,20为表示次设备号。在实际使用中,是通过中定义的宏来转换格式。 (dev_t)-->主设备号、次设备号                   M

2009-12-07 22:47:00 1321

原创 proc源码解析(七)--查找目录项

    前边几节讲了proc的实现和管理,还有一个重要的功能没有提到,那就是proc目录项的查找。    在查找的过程中,用户程序把proc看作是普通文件系统里的文件;也就是说当查找目录项时,do_lookup会调用real_lookup函数执行与文件系统相关的查找,real_lookup则会调用proc根节点inode的 proc_root_inode_operations中的proc_ro

2009-12-07 19:24:00 2832

原创 proc源码解析(六)--proc文件读写函数

    前边说过目录项创建时一般都使用默认的读写函数,本节就来看看默认的文件操作函数的定义。前边已经引用过该定义,此处再次引用:static const struct file_operations proc_file_operations = {    .llseek    = proc_file_lseek,    .read        = proc_file_read,

2009-12-07 19:19:00 3463

原创 proc源码解析(五)--proc的管理函数

    proc目录是系统模拟出来的一个文件系统,本身并不存在于磁盘上,其中的文件都表示内核参数的信息,这些信息分两类,一类是可都可写的,这 类参数都在“/proc/sys”目录下,另一类是只读的,就是“/proc/sys”目录之外的其他目录和文件,当然这只是一种惯例,实际在其他目录下建立可读写的/proc文件也是可以的。    Linux内核在2.4以后/proc目录文件的建立已经变得很容易

2009-12-07 19:11:00 7683

原创 proc源码解析(四)--挂载proc文件系统

   挂载proc文件系统和挂载普通文件系统如ext2没有区别,其挂载过程会在VFS文件系统时详细描述,此处就不在多费唇舌了。   proc的挂载命令是:   root@xuhengyang # mount -t proc proc /proc

2009-12-07 19:09:00 2627

原创 proc源码解析(三)--proc初始化

   在使用proc之前,我们必须首先初始化并挂载proc,并在内核内存中创建数据结构来描述文件系统。但是,不同的体系结构拥有不同的proc内容,所以,在初始化阶段并不完全创建子目录的内容,有些文件要等到系统运行时动态创建。Proc文件系统初始化的流程图如下:  proc_root_init的定义定义如下:void __init proc_root_init(voi

2009-12-07 17:11:00 3612

原创 proc源码解析(二)--proc数据结构

   上节主要说明了proc下的内容,从本节开始解析proc的实现。与普通文件系统一样,proc当然需要虚拟文件系统的支持,所以它必须具备文件系统的几个主要的数据结构。1.proc_dir_entry 在proc文件系统中,每个entry的实例是由proc_dir_entry来描述的,其结构如下: <!--

2009-12-07 16:46:00 2874

原创 proc源码解析(一)--proc文件系统的内容

      在linux系统中,伪文件系统是系统中重要的组成部分,它与普通文件的最大差别在于它的易失性。普通文件都有固定的存储介质,而伪文件系统则存储在内存中,这也使得伪文件系统在系统掉电后,它保存的内容就会挥发掉。Linux系统中存在以下几类伪文件系统:1.procfs:proc提供内核和用户交互的平台,由于其文件格式是ASCII,所以用户可以使用cat,vim,echo等命令查看或修改

2009-12-07 16:27:00 2523 2

计算机系统结构 量化研究方法 V4

计算机系统结构的圣经 两位作者都是系统结构领域的大佬

2009-03-12

编程珠玑第二版中英源打包

本书同个很小的篇幅讲解算法,易于看完。同时附有源码。值得推荐

2009-03-11

TheCProgrammingLanguage C程序设计语言

这个不多说了,c语言的圣经。是个工科的都需要看的 这是英文版V2

2009-03-10

计算机网路 Computer Networks, Fourth Edition 课后答案

这本计算机网络是荷兰计算机图书作家和科学家的大作。保罗计算机网络万象。包含其课后题答案

2009-03-10

Professional Assembly Language

国内关于linux的汇编书籍很少,译著也不多见,本书是讲解AT&T汇编的专著,是读linux内核源码的前奏

2009-03-08

unix操作系统设计 中文版

本书是Bach在1986年写的讲解unix v6版本内核的经典之作,是经过时间考验的一本书

2009-03-08

自己动手写操作系统 经典

写出自己的操作系统也许是所有学习计算机的学生的梦想,可是由于其复杂性让所有人望而却步,本书引领你一步步设计自己操作系统,你会发现原来写出自己的OS并非想象的那么复杂

2009-03-08

人月神话软件工程 中文版

本书讲解大型软件系统的构建过程。是学习软件工程的必读作品

2009-03-07

算法导论课后习题答案

算法导论一书是算法界倚天屠龙之一,也是各个著名大学所用经典算法教材,这是该书的教师手册及答案

2009-03-05

UNIX V6 源代码

UNIX经典版本的源代码,该版本是BELL实验室推出的经典版本,也是赫赫有名的莱昂氏的解析的源码

2009-03-05

Understanding.Linux.Network.Internals

本书是linux内核网络部分的经典之作,所有研究linux的都应该拥有本书

2009-03-02

Posix多线程程序设计

posix多线程设计的杠鼎之作,读完APUE后想深入理解多线程的必读资料

2009-03-02

空空如也

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

TA关注的人

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