摘要:
最近在瞅《Orange‘s 一个操作系统的实现》,个人认为相当好的OS入门实践书籍,配合之前看过的大部分的理论书,容易理解那些抽象的概念(无代码无真相),和《Linux内核完全注释》都是相当不错的入门书籍。这里记录一下可能遇到的问题,主要是配置问题,实现逻辑书里面很详细,代码注释也很详细,仔细多想应该没啥问题。我这里环境是ubuntu 10 64bit, 而书中代码是32bit的。这里在编译链接的时候出了一点小问题。这里记录下。错误: ld: i386 architecture of input file `kernel/kernel.o' is incompatible with i 阅读全文
随笔档案-2012年02月
Bochs ubuntu 安装配置
2012-02-14 19:32 by curer, 7972 阅读, 收藏, 编辑
摘要:
Bochs + freedos安装配置sudo apt-get install build-essentialsudo apt-get install xorg-devsudo apt-get install libgtk2.0-dev下载bochshttp://bochs.sourceforge.net/cgi-bin/topper.pl?name=See+All+Releases&url=http://sourceforge.net/projects/bochs/files$ tar vxaf bochs-2.5.1.tar.gz$ cd bochs-2.5.1$ ./config 阅读全文
矩阵和坐标
2012-02-09 20:50 by curer, 1152 阅读, 收藏, 编辑
摘要:
坐标变化,通过矩阵乘法实现,老久不用数学了,这个很粗浅的小小复习下。线性变换如,x’ = 4x, y’ = 3y;旋转变换平移变换如 将坐标 [2, 0] 向x 轴方向 移动一个单位,那么只要 [2, 0] + [1, 0] = [3, 0]让我们复杂一点如图,将坐标(2, 1) 旋转 然后在向右移动3,向下移动4那个根据之前的方法,就是通过乘法和加法实现而这种先乘法再加法又叫做仿射变换,上例可以转换成和3*3矩阵显然,最后一位不管什么,我们都不在意,只在意2, 6 。这样就比较容易理解CATransform3D 了, 当然CATransform3D 还能做更多的变化,详细的就查询SDK了。不 阅读全文
Objective-C block
2012-02-03 12:11 by curer, 10039 阅读, 收藏, 编辑
摘要:
block 有什么意义,特点等等,这些东西,实在是太复杂了,这里只是简单的总结一下block的内存管理。而且也仅仅限于objective-C的部分Block memoryblock 的内存管理,应该是最头疼的地方,就用这个来自WWDC的例子来解释一下吧。当程序运行到这里时,stack 空间中有 shared 变量和 captured 变量。这里可以看出,__block 变量开始是处于stack上的。当程序运行到这里时,stack 空间中有 shared 变量,captured 变量和block1。这里可以看出,block 类型的变量开始时也是处在stack上的。当程序运行到这里时,stack 阅读全文