摘要: 最近项目中需要在内核态使用RSA加密算法,加密算法对我来说是一篇空白,到网上了解了些,比较好的加密跟认证的库有openssl,crypto++等,但这些库很庞大,而且很多东西因为考虑到复用,而不是单独为实现一个RSA算法而实现,在用户态使用非常方便,只有下载openssl的源码,安装即可调用其实现的加密算库,包括AES,Blowfish,RSA,一系列散列算法MD4,MD5, SHA1等等。由于... 阅读全文
posted @ 2013-04-19 14:04 ydzhang 阅读(773) 评论(0) 推荐(0)
摘要: 看虚拟文件系统的次数估计已经是两位数了,每次都有新的收获,这里把VFS涉及到的链表串起来总结一下,主要就是四大对象之间的串连,由于把这些串连关系放到一个图中,逻辑结构太过复杂,可看性太差。另外虚拟文件系统中链接关系比较复杂,下面是对深入理解VFS机制比较重要的一些链表的介绍。 文件系统类型file_system_type链表 其中,file_systems全局变量定义在fs/filesyste... 阅读全文
posted @ 2013-04-19 14:04 ydzhang 阅读(484) 评论(0) 推荐(0)
摘要: Unix内核提供的基本时间服务是计算自国际标准时间1970年1月1日00:00:00以来经历的秒数(time_t类型)。Unix系统中时间戳一般32位数据存储,到2038年,32位数将溢出。 time函数返回当前时间和日期 #include <time.h> time_t time(time_t *time); 时间总是作为函数返回值。如果参数不为空,则时间值放入time指针指向的内存单元... 阅读全文
posted @ 2013-04-19 14:04 ydzhang 阅读(446) 评论(0) 推荐(0)
摘要: 通过当前path{cur_dentry,cur_ mnt},如何方向遍历到根路径 1, 如果当前的path为进程的根目录 即cur_dentry == current->fs->root && cur_mnt == current->fs->rootmnt 此时已不能再向上级目录追踪,遍历完毕。 2, 如果当前的path为文件的根目录 即cur_dentry == cur_mnt->mnt_r... 阅读全文
posted @ 2013-04-19 14:04 ydzhang 阅读(465) 评论(0) 推荐(0)
摘要: 一、编译和连接一般来说,如果库的头文件不在 /usr/include 目录中,那么在编译的时候需要用 -I 参数指定其路径。由于同一个库在不同系统上可能位于不同的目录下,用户安装库的时候也可以将库安装在不同的目录下,所以即使使用同一个库,由于库的路径的不同,造成了用 -I 参数指定的头文件的路径也可能不同,其结果就是造成了编译命令界面的不统一。如果使用-L 参数,也会造成连接界面的不统一。编译和连接界面不统一会为库的使用带来麻烦。为了解决编译和连接界面不统一的问题,人们找到了一些解决办法。其基本思想就是:事先把库的位置信息等保存起来,需要的时候再通过特定的工具将其中有用的信息提取出来供编译和连 阅读全文
posted @ 2013-04-19 14:03 ydzhang 阅读(631) 评论(0) 推荐(0)
摘要: ONC RPC(Open Network Computing Remote Procedure Call)是一个由Sun Microsystem公司开发的开源的RPC框架。它是用于UNIX系统的RPC事实标准。ONC RPC已经被证明是一项高性能的技术。包括Solaris,AIX,HP UX,Linux等在内的大多数UNIX平台都支持RPC服务。在传统的编程概念中,过程是由程序员在本地编译完成,并只能局限在本地运行的一段代码,即其主程序和过程之间的运行关系是本地调用关系,这种结构在网络日益发展的今天已无法适应实际需求。众所周知,传统过程调用模式无法充分利用网络上其他主机的资源(如CPU、Mem 阅读全文
posted @ 2013-04-19 14:03 ydzhang 阅读(3227) 评论(1) 推荐(1)
摘要: 关键字 详细说明 分布式文件系统 研究point 1,性能,容量,可用性,安全性,可扩展性,可管理性 2,用户组件与数据管理组件的分离, 3,key:服务客户的响应时间 分布式文件系统应该具有的特性 1,网络透明性:客户端使用访问本地资源的方法访问网络资源 2,容错性:网络错误,主机,存储设备故障发生时,系统仍能正常提供服务(可降级,更慢的响应) 3,可扩展性:系统规模扩大时... 阅读全文
posted @ 2013-04-19 14:03 ydzhang 阅读(390) 评论(0) 推荐(0)
摘要: Ext2设计思想: Ext2 features 1, 支持4TB大文件。 2, 支持255字符的文件名,并可扩展到1012字节。 3, 为root用户预留一些块。 Advanced ext2 features 1, 支持多种块大小,1024,2048,4096. 2, 快速的符号链接实现(小于60个字符的连接名时不需要额外分配块)。 3, 追踪文件系统状态,是否为dirty,是否一致等,设置最大... 阅读全文
posted @ 2013-04-19 14:03 ydzhang 阅读(241) 评论(0) 推荐(0)
摘要: 受人所托,写了个文件监视器小程序,总共300+行,实现对指定文件的监视功能,当文件新增,删除,或被修改,程序予以记录并报告。 实现是通过不断扫描指定的文件,通过比较两次扫描的状态来判断文件的变化。文件状态数据结构:/* filestat struct for monitoring */typedef struct filestat{ char f_name[FNAME_MAX]; struct s... 阅读全文
posted @ 2013-04-19 14:03 ydzhang 阅读(321) 评论(0) 推荐(0)
摘要: 虚拟网络VMnet1-VMnet9 VMnet1~VMnet9这9个虚拟网络基本相同,其中VMnet1和VMnet8也有一些特殊,我们可以看到安装VMware以后,在宿主计算机中会多出来VMware Network Adapter VMnet1和VMware Network Adapter VMnet8两块网卡,这两块网卡分别和VMnet1、VMnet8虚拟网络连接。这样就保证了宿主计算机... 阅读全文
posted @ 2013-04-19 14:03 ydzhang 阅读(269) 评论(0) 推荐(0)