摘要:
linux系统中每个进程由一个进程id标识,在内核中对应一个task_struct结构的进程描述符,系统中所有进程的task_struct通过链表链接在一起,在内核中,经常需要通过进程id来获取进程描述符,最简单的方法可以通过遍历task_struct链表并对比id的值来获取,但这样效率太低,尤其当系统中运行很多个进程的时候。 linux内核通过PID散列表来解决这一问题,能快速的通过进程I... 阅读全文
posted @ 2013-04-19 14:09
ydzhang
阅读(651)
评论(0)
推荐(0)
摘要:
内核中很多地方都需要跟踪记录C语言中结构的实例。尽管这些对象的用法大不相同,但各个子系统的某些操作都非常类似,如引用计数,内核为了减少代码复制,采用了一般性的方法来管理内核对象。所引入的框架并不只是为了减少代码复制,同时也为内核不同部分管理的对象提供了一致的视图。 一般性的内核对象机制可用于执行下列对象操作: 1. 引用计数; 2. 管理对象链表; 3. 集合加锁; 4. 将对象属性... 阅读全文
posted @ 2013-04-19 14:09
ydzhang
阅读(833)
评论(0)
推荐(0)
摘要:
有限状态机是文本处理的利器,关于有限状态机的理论比较复杂,但在实际文本处理应用中,
只需要对有限状态机的模型有所了解,搞清楚状态转移关系即可快速的写出程序。 如对网络配置文件进行解析(与/etc/sysconfig/network-scripts/ifcfg-eth0文件类似的格式)
格式如下:(其中以#开头的行为注释行,有效的配置字符为数字,字母和点号) #this is a net wor... 阅读全文
posted @ 2013-04-19 14:09
ydzhang
阅读(300)
评论(0)
推荐(0)
摘要:
115优盘(http://u.115.com)
115优盘是由雨林木风最新推出具有存储容量大、免费、高速、稳定、易用,安全等特点的免费网络硬盘,即免费网络存储空间服务。115优盘初始提供3G的永久存储空间以及5G的临时存储空间,支持文件共享,支持外链,并提供了客户端工具。 联想网盘 (http://www.lenovodata.com)
联想网盘为用户提供了5G的“免费”存储空间,但我最近登录时... 阅读全文
posted @ 2013-04-19 14:09
ydzhang
阅读(446)
评论(0)
推荐(0)
摘要:
在HDFS中,NameNode用来管理文件系统的命名空间,其将所有的文件和文件夹的元数据保存在一个文件系统树中,这些信息会在硬盘上保存为fsimage(命名空间镜像)和edits(修改日志)文件;其还保存了文件包含哪些数据块,分布在哪些数据节点上,但这些数据并不保存在硬盘上,而是在系统启动的时候从数据节点收集而来的。DataNode是文件系统中真正存储数据的地方,其周期性的向元数据节点回报期存储... 阅读全文
posted @ 2013-04-19 14:09
ydzhang
阅读(1530)
评论(0)
推荐(0)
摘要:
1. 创建java运行环境 l 下载jdk for linux: jdk-6u22-linux-i586.bin http://www.java.com/zh_CN/download/manual.jsp l 安装jdk:chmod a+x jdk-6u22-linux-i586.bin; ./ jdk-6u22-linux-i586.bin l 设置环境变量 #vi /etc/pr... 阅读全文
posted @ 2013-04-19 14:09
ydzhang
阅读(339)
评论(0)
推荐(0)
摘要:
什么是 XML?
1. XML是一种可扩展的标记语言 (Extensible Markup Language)。 2. XML的标记 (tag) 没有被预定义,用户可以自行定义标记来描述数据。 3. XML主要用来描述和存储数据。 4. XML具有自我描述性。 5. XML是树状结构的文档,是个结构化的文档。 6. XML文档是个文本文件。 XML 的优点
1. 易携带和传输: XML... 阅读全文
posted @ 2013-04-19 14:09
ydzhang
阅读(172)
评论(0)
推荐(0)
摘要:
马上一年又过去了,研究生生涯也算过去了一大半了,发现这两年也读了不少的专业书籍,给自己读过,并且还有点印象的书写个书评,志同道合者可以借鉴下我的意见,仅供参考。计算机领域的专业书籍非常之多,好多经典之作,这些书值得好好品味;很烂的书也很多,这些书就不值得去浪费时间了。好读书,读好书。 书名 评价 说明 C专家编程
C陷阱与缺陷
C和指针 ★★★★★ 搞C语言开发的,非常值得... 阅读全文
posted @ 2013-04-19 14:09
ydzhang
阅读(447)
评论(0)
推荐(1)
摘要:
很多应用需要客户首先进行注册,然后使用用户名、密码进行验证,之前在为一个分布式系统添加认证模块的时候,遇到一个问题,这里进行简要的分析。认证的两种主要形式:1. 单机登录认证:如windows、linux系统用户登录,这种应用的程序代码通常是不公开的,用户要正常的使用系统,必须越过这一障碍。2. 网络登录认证:如QQ、飞信等聊天软件的用户登录,这种应用的代码可以是开源的,因为即使即使代码开源,hacker去掉了客户认证的代码,重新编译运行,服务器发现记录客户端的登录状态为未登录,客户端还是不能继续工作。项目中遇到的问题:客户端通过挂载后,像使用本地文件系统一样使用远程文件系统。登录认证在挂载的 阅读全文
posted @ 2013-04-19 14:09
ydzhang
阅读(253)
评论(0)
推荐(0)
摘要:
对于很多服务来说,在同一个服务器上只能运行一个实例,那么通过什么方法来保证程序同一时刻只有一个实例运行呢?通过编写shell脚本来管理程序的启动、停止是个不错的方法。在启动时,shell脚本会创建进程标识文件(存储正在运行实例的pid)以表明已经有实例在运行,如果文件已存在,则说明已有实例在运行,不需要做任何事;在退出时,shell脚本会删除进程标识文件,表明没有实例运行。shell脚本管理方法在应用程序之上再包了一层,那么能不能直接在程序开始运行时自己判断是否有实例在运行呢,答案是肯定的。原理其实差不多,还是要借助公用资源---文件,当然不仅仅是文件而已,还需要文件锁的支持。大致思路是这样的 阅读全文
posted @ 2013-04-19 14:09
ydzhang
阅读(252)
评论(0)
推荐(0)
浙公网安备 33010602011771号