0%

最近“被迫”研究ChromeOS——这个东东在国内往实在是太痛苦了!!不管怎么样,把最近玩ChromeOS的过程记个流水账。防止自己遗忘,也给国内同样想玩ChromeOS的玩家提供点参考——国内可以搜到的东西实在是太少了。
下面所有的步骤,都默认读者是可以无障碍访问互联网的,对于GFW这件事情,这篇文章基本上帮不上忙,因为我自己没有找到一个完美解决的办法。

安装ChromeOS

Read more »

当我们创建和使用虚拟机时,通常都伴随着虚拟机的联网问题。下面就帮大家梳理下QEMU虚拟机中几种网络的模拟和用法。

概述

Read more »

为什么这么做?

  1. 系统完成一次重启的时间太久。
  2. 越来越频繁的安全相关的紧急的升级,包括Firmware/microcode/OS/VMM/QEMU。
  3. 运行中断给“云”服务提供商带来不好的用户体验。
Read more »

浅谈“内存读写重排序”

在我们编写C/C++代码时,以及它在CPU上运行时,按照一些规则,代码中原有的内存读写指令的执行顺序(又叫“程序顺序”, program ordering)会被重新排列。这个现象会在两个地方引入,编译时候由编译器引入;以及运行时由处理器引入。目的都是为了”使代码运行的更快”。尽管本文重在说明运行时CPU对内存读写的重排序作用。但考虑完整性以及防止读者混淆,我们会两种重排序一起介绍。

Read more »

引言

接下来的几个日志,我会写几篇关于如何学习X86指令集,也是帮助自己梳理和记忆知识点。
下面是我大概总结了一下,一个操作系统需要掌握的知识点,仅供参考欢迎斧正!

Read more »

‘内存存取顺序(Memory ordering)’一词说的是处理器通过系统总线进行读取(加载)以及写回(存储)到系统内存里面。Intel 64以及32位系统根据架构的实现,支持多种存储顺序模型。例如,intel 386处理器强制使用“程序顺序”(强顺序),就是说读写系统总线的顺序按照全部环境中CPU指令流产生的顺序。
后来为了指令执行的效率,IA32架构允许脱离“强顺序”,在奔腾4、Xeon以及P6系列处理器中,称作“处理器顺序”。处理器顺序不同的方式,称作“内存存取顺序模型”,他们都允许增强执行,例如 允许读操作在可以缓存的写操作之前。所有这些不同模型的目的就是增强指令执行速度,同时保持存储内容的一致性,即使在多核系统中亦然。
8.2.1和8.2.2章节描述在intel486、奔腾、Core2 Due、Atom、Core Due、奔腾4、Xeon以及P6系列处理器中内存存取模型的实现。8.2.3章节会给出具体的存储模型的例子。8.2.4章节是关于字节操作的特殊处理。8.2.5章节讨论一些特殊指令的使用会影响存储模型的行为。

8.2.1 奔腾以及486处理器上的存储模型

Read more »

引言

对于Linux Kernel 或者OS相关的自动化测试,如何自动更新被测的Kernel以及OS image有时候是比较困难的事情。
Linux社区的”老神仙”Fengguang同学牵头开发了0-day自动化测试系统,系统期初的核心功能是利用kexec加载待测的kernel image二次启动。大概流程是:

Read more »