摘要: 有感于白天在微博、知乎、QQ空间、小说上面耽误的时间太多,特地写了个小脚本,定时将我常去的那几个网站重定向到127.0.0.1。流泪,以后白天不会再去网上闲逛了,晚上可以上网放松一下,白天还是好好学习吧。这里总结一下写脚本过程中用到的内容。shell脚本的一些基本要求就不说了,这里用到了几个命令,分别是:date、test、tail、sed。date命令顾名思义,用于获取当前系统时间,使用+%H选项时可以单独返回当前小时(24小时制)。例如,当前时间为8:48,返回值为08.test命令用于测试各种内容,关于test命令的用法大家可以自己查一下。需要注意的是,不同格式数据的比较方法不同。我刚开 阅读全文
posted @ 2012-05-18 09:11 o0慢节奏0o 阅读(1019) 评论(0) 推荐(0) 编辑
摘要: 我们可以把磁盘想象成多个区域的间隔,每个区域都可以成为一个文件系统。每个文件系统都有其各自的其主设备号与次设备号,可以使用宏major与宏minor来读取块特殊文件文件(block special file)与字符特殊文件(character special file)的主、次设备。主设备号是一种虚假设备号(基于/dev目录的文件系统),其次设备号是实际设备号(基于磁盘)。 文件系统在磁盘中存储形式如图1所示:图1. 磁盘中文件系统存储形式 其中,文件属性及指向文件中所存储数据的指针存储于i-nodes中,文件名、文件中所存储的数据、该文件所对应的i-node编号存储于data blo... 阅读全文
posted @ 2012-05-12 15:20 o0慢节奏0o 阅读(625) 评论(0) 推荐(0) 编辑
摘要: 在Unix中,一切都以文件的方式存在,文件可以分为:常规文件(regular file),包含某种形式数据,其数据是二进制还是字符文本对内核无意义。目录夹(directory file),包含目录中文件的名称和指向该文件的指针。块特殊文件(block special file),用于系统中的某些设备,如磁盘设备。字符特殊文件(character spcial file),用于系统中的某些设备。管道文件(FIFO),用于进程间通信。套接字文件(socket),用于进程间网络通信。字符链接(symbolic link),指向另一个文件。 可以使用stat、lstat、fstat函数获取已经存... 阅读全文
posted @ 2012-05-06 21:50 o0慢节奏0o 阅读(417) 评论(0) 推荐(0) 编辑
摘要: Unix文件操作常用函数包括open、close、creat、lseek、dup、dup2、fcntl等,其中open、creat、fcntl函数需要包含头文件<fcntl.h>,其余几个函数需要包含头文件<unistd.h>。由于在Linux操作系统中使用man命令可以非常方便的查找函数原型及示例,这里就不帖出函数原型了,只讲一下使用时需要注意的地方。每一个在程序中打开的文件都有一个相应的文件描述符(file descriptor),Unix操作系统中的文件描述符保存在/dev/fd目录下。每一个进程对该目录读取到的结果都不想同(视该进程正在使用的文件数而定)。如果由 阅读全文
posted @ 2012-04-30 21:20 o0慢节奏0o 阅读(1643) 评论(0) 推荐(0) 编辑
摘要: 在任何情况下,当处理器检测到有事件发生时,他就会通过异常表进行跳转,执行异常处理程序。异常可以分为四类:中断、陷阱、故障、终止。中断是异步发生的,是来自处理器外部的I/O设备的信号的结果。硬件中断不是由任何一条专门的指令造成的,从这个意义上来说,它是异步的,而其他异常时同步发生的,是执行当前指令的结果。陷阱是有意的异常,是执行一条指令的结果。陷阱最重要的用途是在用户程序和内核之间提供一个向过程一样的接口。故障由错误情况引起,它可能能够被故障处理程序修正。如果错误能够修正,它就将控制返回到引起故障的命令,否则将返回到内核中的abort例程,终止引起故障的应用程序。终止是不可恢复的致命错误造成的影 阅读全文
posted @ 2012-03-18 23:02 o0慢节奏0o 阅读(694) 评论(0) 推荐(0) 编辑
摘要: 程序优化的第一步就是消除不必要的内容,让代码尽可能有效地执行他期望的工作。消除不必要的函数调用、条件测试和存储器引用。程序优化的第二步利用处理器提供的指令级并行能力,同时执行多条指令,降低一个计算不同部分之间的数据相关,增加并行度。当一系列操作必须按照严格的顺序执行时,就会遇到延迟界限,因为在下一条指令开始之前,这条指令必须结束。当代码中的数据相关限制令处理器利用指令级并行的能力时,延迟界限能够限定程序性能。吞吐量界限刻画了处理器功能单元的原始计算能力。这个界限是程序性能的终极限制。循环展开能够从两个方面改进程序性能。首先,它减少了不直接有助于程序结果的操作的数量,例如循环索引计算和条件分支。 阅读全文
posted @ 2012-03-04 15:36 o0慢节奏0o 阅读(787) 评论(0) 推荐(0) 编辑
摘要: 今天根据《Ruby for Rails》写了一个小例程,r4rmusic1。目前这个例程还没有完全结束,主要问题及解决办法如下:问题:数据库登录失败。原因1:在配置文件中没有指定数据库登录的用户名及密码,导致Rails默认使用root用户和空密码登录,出现多次失败。解决方法:在database.yml文件配置中指定登录用户名及密码。具体格式如下所示:development: adapter: mysql database: r4rmusic1_development pool: 5 timeout: 5000 username: username password: passwd... 阅读全文
posted @ 2012-01-22 02:46 o0慢节奏0o 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 这是去年寒假读完第一遍《C++ Primer》的时候做的一些总结,刚才整理资料的时候翻到了,就先粘过来吧。因为要复习C++,把这篇文章又重读了一遍,发现了不少错误,重新修订了一次。(2012年3月30日)浮点数:float只能保证6位有效数字,double只能保证10位有效数字。一般而言,对付典型的比较需要使用大于或小于,而不使用等于或不等于,其根本原因在于计算机对于浮点数的存储方式使浮点数存储精度过低。字面值常量:整形字面值常量默认为int或long,浮点型字面值常量默认为double,字符串字面值常量默认为C风格字符串。编写代码时可以利用\将长代码分行,特别对于较长的字面值常量来说,非常管 阅读全文
posted @ 2011-12-29 01:32 o0慢节奏0o 阅读(1992) 评论(2) 推荐(1) 编辑
摘要: 最近一直在复习期末考试,所以学习内容不多,还有两周就考完试了,两周后会经常写些学习笔记。这篇文章主要是记录自己对于此次发贴时出现的问题的一些感受。由于此问题以直接在论坛中进行了反应,现将原文粘贴如下:我刚才做了个测试,用o0慢节奏0o的帐号(权限为超级版主)和用此帐号(无特殊权限)在灌水区发同一篇帖子,此帐号提示文章内容不得超过10000字节,而o0慢节奏0o帐号则可以把帖子顺利发出。由此可见,对论坛帖子的字数限制是由权限设置决定的。是不是可以修改设置,使低级别用户也可以发字数较多的帖子。我找到了几篇不错的教程,都由于字数过多无法发布。如果这样不做修改,是不是只能帖出个链接才能够顺利发贴,如果 阅读全文
posted @ 2011-12-11 21:06 o0慢节奏0o 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 曾经有几次想要开个博客,因为种种原因被耽误下来,现在总算是确定下来了。在博客园安家,开始记录自己的学习经历吧,也可以为明年找工作做做准备。这几天还在复习软考,没有学习新的知识,对旧内容也回顾的较少,可能不会写什么东西,等软考结束后开始正式写博客。记录自己的求知历程。 阅读全文
posted @ 2011-10-29 16:39 o0慢节奏0o 阅读(80) 评论(0) 推荐(0) 编辑