从Vim.cn Google groups上面摘抄的文章,目前似乎没有了只剩下了google快照,把文章转载到这里,给自己以后参考。
Arch指定DNS服务器
学校里提供了IPv6的接入,但是之前使用的一直是学校提供的DNS服务器,使用的是IPv4的方式。在google上的IPv6的hosts文档上知道有IPv6的DNS服务器的地址,于是上网找了在Arch上设置DNS服务器的地址,简单记录如下。
修改/etc/resolv.conf的可修改性
由于学校使用的是DHCP的方式获取IP地址,Arch上使用的DHCP的客户端是dhcpcd,在默认情况下该服务器将会将获取的DNS服务器的地址填入到/etc/resolv.conf文件中。因此如果指定DNS服务器的方式,可以将该文件的文件设置为不可写。通过使用chattr +i /etc/resolv.conf的方式可以将该文件设置为不可修改的。
如果在网络的环境不变的情况下,使用该种方式便可以解决,但是由于在宿舍和在实验室的环境,这两个网络环境下学校指定的DNS服务器是不一样的,在使用校内提供的服务器时,还是用学校的DNS服务器便可以了,因此这种方法对自己而言还不是很合适。于是出现下面的方法。
VIM使用pathogen
VIM Undo记录
深入理解计算机系统-笔记 Ch2
计算机的表示法是用有限数量的位来完成对一个数字的编码,因此当结果太大时,将会溢出(overflow),整数运算具有结合性但是浮点数的运算是不可结合的。附录中有演示了书中提到的溢出和浮点数结合的c源代码。
gcc编译选项指定c语言的版本:
c版本 | GCC命令行选项 | |
---|---|---|
GNU89 | 无, -std=gnu89 | |
ANSI, ISO C90 | -ansi, -std=c89 | |
ISO C99 | -std=c99 | |
GNU 99 | -std=gnu99 |
深入理解计算机系统-笔记 Ch1
计算机系统漫游
信息就是位
加上下文
。
由gcc处理的程序包括四个步骤,这四个步骤的处理程序分别是:预处理器、编译器、汇编器、链接器,对应的四个阶段分别是:预处理阶段(将头文件、预处理指令插入到源代码中),编译阶段(将c文件生成为汇编语言文件),汇编阶段(将汇编语言翻译成为机器文件),链接阶段(将各个目标代码合并生成一个可执行程序)。
了解编译系统的工作流程的好处:
- 优化程序性能;
- 理解链接时出现的错误;
- 避免安全漏洞。
UTICODE编码记录
今天查看师兄以前写的笔记,中间看到一个UNICODE和UTF-8编码的内容,于是在网上找了下资料,现在对这点有一点点了解,主要参考了阮老师的这篇文章,先记录下笔记吧。
UNICODE编码由来
在20世纪60年代,美国指定了ASCII编码体系,将英语字符与二进制位的关系做了统一的规定,这就是ASCII编码,并且一直沿用到今天。ASCII一共规定了128个字符的编码,只占用了一个字节的后7位,最高位始终为0。
但是不同的国家的字符符号不一样,为了适应这种情况,就出现了UNICODE。
UNICODE目前可以容纳100多万个符号,每个符号的编码都不一样。