Tao's blog

Learn something everyday.

深入理解计算机系统-读书笔记(第七章)-链接

什么是链接 链接是将各种代码和数据部分收集起来变成一个单一的文件的过程,这个文件可被加载到存储器并且执行。 链接可以存在于编译时,可以存在于加载时,甚至也可以存在于运行时。在现代的操作系统中,链接由连接器执行。 编译时的链接静态链接,加载时和运行的链接称为动态链接。 静态链接将被链接的部分直接合成到一个文件中,因此如果多个程序调用了同一个库, 那么他们编译成的程序中每一个都直接存在这个...

提高学习改进记忆的科学方法-转载

两位心理学教授亨利·罗伊迪杰 & 马克· 麦克丹尼尔,在2006年揭示了一个学习科学领域的新发现。在这项为期一年半的研究中,他们把一门六年级的社会研究课程划分为三个部分。其中三分之一的学习内容,在每堂课开始时,安排一次多项选择题测验(根据课前布置的阅读任务),在每堂课结束时,安排一次多选选择题测验(基于讲课内容),在单元考试前一天,安排一次多项选择题测验。另外三分之一的学习内容只进...

Head First Design Pattern - 观察者模式

简单介绍什么是观察者模式 观察者模式定义了一种一对多的数据依赖关系,当被观察者的状态发生改变时,会将状态逐个通知观察者。观察者模式就像生活中的订阅报纸的过程。 每当新的一期报纸产生时,所有的订阅者都会收到最新的信息。 例子 可被观察的类,Observable 在这里充当了“报纸”或者说是信息源的角色,Observable必须实现能够动态的添加和移除观察者(“订这个报纸的用户”)。 所...

深入理解计算机系统-读书笔记(第4章)- 处理器体系结构

概念,什么是指令集体系结构 机器指令 在机器语言级别,处理器必须执行一系列指令,每一条指令执行某个简单操作。这些简单操作的组合构成了千变万化的程序。编译器负责将高级别 的语言翻译成机器指令。 指令集体系结构(Instruction Architechture Set, ISA) 一个处理器支持的指令和指令的字节级编码,称为它的指...

深入理解计算机系统-读书笔记(第3章)--程序的机器级表示

Ch3 程序的机器级表示 机器级代码 机器级别代码的两种抽象(是指机器级代码对硬件的抽象) ISA抽象,它定义了处理器状态,指令的格式,以及每条指令对状态的影响。大多数ISA,将程序的行为描述成好像每条指令是 按照顺序执行的,一条指令结束后,下一条再开始。处理器的硬件远比描述的更为精细复杂。他们并发的执行许多指令,但是可以采...

RISC-V 指令集介绍

什么是RISC-V? RSIC-V(读作 risk five)指令集是UC Berkeley 研发的一款CPU指令集,该指令集最初的目的是为了支持计算机体系结构的研发和教学,但是后来Berkeley希望 该指令集能够成为一个可以被产业界真正实现的开源架构。之所以叫RSIC-V是因为该架构是伯克利研发的第五代主要的RISC指令集结构(前面四代分别是 RISC-I,II,SOAR和SPUR)。...

Ubuntu 字体和屏幕显示设置

Ubuntu屏幕显示设置 使用Linux之后总感觉屏幕的gamma值不对,整个屏幕显得发灰有很多白色的噪点,对比度不清楚。 所以一直想找到一个屏幕矫正的工具,像windows下的色彩配置->屏幕校正一样的东西。百度了好久,一直没有找到,所以万事还得靠谷歌。 找到了以下的方法来设置屏幕的gamma值。任选其中一个即可。 redshift redshift...

一次只做一件事

最近一段时间总是感觉特别累,每天好像都在学习,但是每天都感觉没有什么收获。 还有就是,感觉每天都在学习新的软件,看新的算法,整新的语言,找新的技能点。其实这些都不对。 虽然世界上有很多东西很好,但是它们对我们来讲完全不重要,或者性价比不高。 大概是最近的思路没有理清楚,浪费了很多不必要的功夫。 读关于全栈的书籍虽然很炫酷,可以见到各种各样的新技术,总是可以见到新的东西,但是有一个缺点就是...

Windows系统下多个Python版本共存的问题

在windows上需要存在多个python版本时,比如python2和python3同时存在,假定python2和3的安装目录分别为: C:\Python27和 C:\Python35。设置windows的步骤如下: 设置path环境变量: 假定你想要的默认的python版本为python27,将C:\Python27;C:\Python27\Scripts; C:\Python35;C...

HashMap 和HashTable的区别

HashTable是线程安全的, HashMap不是。 HashMap允许键和值为null, 但是HashTable不允许。 HashMap是轻量级的HashTable,两者都实现了Map接口,完成键值对映射,但是HashMap的效率高于HashTable。 参考链接: HashMap和HashTable的区别