01
Sep 10

系统接口的比较和再认识

install, config, register, init, open, write, ioctr

在软件世界、程序开发领域,甚至整个工业圈和生活圈充斥这样的一些动词术语:安装、配置、注册、初始化和打开等,这些术语都是奔向一个共同的目标——让所需的功能可用。每一个动词都描述了一个【系统的逻辑接口】,并且这些接口的操作的内容对应着【作业人员】的一项工作。而在具体的情景内,一个作业人员可能身兼多项工作,这样会混淆这些术语的逻辑本质,看不清它们之间的细微差别。本文细究一下这些术语的差别,并以我个人的专业——程序开发领域为例子作一些说明。

Continue reading →


30
Aug 10

手工定制Linux系统

引子

陆续研究lfs(linux from scratch)有一段时了,发现一些问题,比如无论是官网教程,还是一些第三方的分析文章,都有一个共同点,描述过于的形而下,也就是太过于注重细节。过于实际和过于理论有同一样的缺点——不利提高学习效率[注]。另外,【形而下】风格的教程给人不通透的感觉,例如你是把东西做出来了,可是你很可能有几步是不解的,只是盲目照做。

到目前为止,我看官方教程没有提供足够的背景信息,因而它不是面向一般linux普通用户,包括linux下的应用开发者,它面向系统开发的程序员。如果定制linux有客观真实的价值,并且定制os是一项艰巨的任务,那么像这样的第三方补充信息还需要很多,本文只是以小结一下学习经验,对lfs教程补充一些【形而上】方面的信息,弥补一下学习市场对【自上而下】方式的缺失。

Continue reading →


24
Jun 10

编译程序与操作系统的关系

和很多程序员一样,编译器到目前为止对我还存在一些让我迷惑的地方。比如编译器与操作系统的关系,编译器与CPU的关系,动态链接器从哪查找共享库等。让人困惑的原因有几,第一是编译器的功能角色特殊,编译器是生成程序的程序;第二是编译过程变得越来越复杂[注],一支编译器支持多种程序语言、支持共享库、编译优化,编译与链接可分开等;第三,操作系统的介入。本文试着从第三点——操作系统介入编译过程后对编译器的影响,看看操作系统与编译器有什么关系。

注:编译过程变复杂源于计算机应用变复杂。例如应用程序项目越来越庞大,功能越来越多;为了管理大项目,拆分源程序文件为多个;为了提高程序的性能,目标程序文件的链接期被延迟到运行前;为了程序的灵活安装和升级,引入各种脚本工具,如make,configure(shell)。

Continue reading →


17
Jun 10

引导程序再认识rev#2

在32位以上的现代计算机里,bootloader,中文叫【引导程序】,是一支将计算机从【开机重置态】或者叫【物理裸机态】过渡到【逻辑虚拟机态】的程序。这个引导过程叫Booting。所谓【物理裸机态】指机器开机时最基本的功能状态,它是机器可用的基本保证,由厂商定义和提供实现。【物理裸机态】可以理解为物理态,而【逻辑虚拟机态】则是逻辑态,逻辑态有一些的标准,比如32位处理器的保护模式。计算机的逻辑态是现代计算机应用的客观需要,比如桌面GUI应用、多进程、互联网等,但由于成本、硬件局限等原因,目前的计算机还不能设计成开机就达到逻辑态的能力要求。bootloader在一段时间内仍在计算机应用中担当重要角色。

Continue reading →


14
Jun 10

May 2010

五月日记

五月二十九

2010-05-29 21:12:05
转眼间又话月底,五月马上又烧完。屈指一数,还有一个月我就完成了整整三年的休业长征。按最新的预期,结束还不能十分的确定。逼于经济的压力,这两个月不得不放下学业的主流–【专业实习】,交替的学习【博客系统CSS】和【初中数学教学】两条支流,如果不分心学习这两条支流,或许不用长征三年。

虽然当和尚的日子一再拖延,但研究CSS和初中数学过程中的不少意外收获让我感到不少欣慰,有失有得。比如,在研究CSS过程中,我在一贯的哲学嗅觉引导下再次反复琢磨逻辑学、语言学和教育的关系,把过去的一些疑问弄明白了。并且这些新认识竟然可以直接用到初等数学的研究中。 Continue reading →


12
Jun 10

提高学习效率的方法二——掌握完备概念内涵的方法

概念是知识的基本单位,是人们一定阶段认识的总结,是人们认识成果的结晶。任何科学研究的成果,都要以概念的形式固定下来。固定概念的实体形式一般有字典、词库和百科全书。但这些典籍最多比较【完备】的固定少部分概念层中靠近顶层的原始概念。像一些新进的技术概念云计算、XHTML、CSS和Linux 等,一本厚厚的大师专著也未必能完备涵盖它们的方方面面[注1]

注 1:本文是对上一文——《提高学习效率的方法一——厘清本质的本质》中注5的问题的阐释。也就是【解开事物特有性质的集合】。

虽然完备的任务貌似很艰巨,但是我们仍然希望能探究它,至少能对完备的可控制范围有清晰的理解,在拿到一个新的复杂概念的时候不至于盲目决策。我们下面以分析 CSS为例子引入话题。

Continue reading →


12
Jun 10

科学思维的逻辑方法揭示世界的有机结构

2010-04-29 01:54:43 今天发现 了大秘密,原来各种 【 科学思维的逻辑方法】揭示了世界的有机结构。

为什么这么 说呢?因为, 科学思维的【逻辑方法】 是对感性事实进行处理,然后上升为理性知识的手 段,而这些感性事实正来自客观世界(的各个层面)。科学发展至今业已形成了比较系统的认识客观世界的手段,包括各学科特殊的研究方法。而最一般的是以下几 种 【逻辑方法】 :

抽象与具体、分析与综合、类比与分类

Continue reading →


12
Jun 10

从语言学、逻辑学和系统论的角度看CSS

CSS是一种文档样式描述的语言。作为一种语言,CSS会有语言的基本要素,比如语法、语义;另外,用CSS编写的“程序”是一种声明式语言程序,这种逻辑程序是编写给浏览器的渲染引擎“阅读"的,语言、程序和浏览器的关系涉及语言、逻辑和系统论的内容。我们就从语言学、逻辑学和系统论三个侧面了解一下CSS作一种机器语言的功能和角色。

从语言学的看CSS

CSS(Cascading Style Sheets)是一种样式表语言,它是一种声明式语言,与常用的命令式语言(像C语言,JavaScript等)相对;作为一种语言(一种人工语言),CSS会有语言的基本要素,比如语法、语义,还有语言【交流的目的】和语言【交流的逻辑主体】等。

Continue reading →


12
Jun 10

2010-1-2-3

日记

三月十日

2010-03-10 13:56:16
转眼三月十日,可以说潜伏了一个多月,工作生活没有任何痕迹。记得,春节前说定下工作,可是因为种种原因,到节后却发现,这条路比我臆想的坎坷不少。
春节前后,感冒头痛低烧,足足病了一个月。第一次被感冒如此这般的折磨,头痛思考不了,学习没法前进,这远不只是一种肢体上的煎熬。此为第一坎。
节后回来,在人才热线狂轰乱炸了好一阵子,没有接到一个面试通知。之前有同学建议我,今年用工慌,当心抓住机会。当时想告诉他,其实我应聘的职位应该不受什么“用工荒”影响,想不到形势比我想像还要“不荒”。没有项目经验是我求职的致命弱点,我得降低姿态,以实习生的身份赢得试用机会。此为第二坎。
第三坎是经济问题,眼下的钞票不够付月底房租。我在想面对如此之多的未知数,我要做好打持久战的准备,再怎么扯脸皮借下去,能借都很有限;我必须实现一些自救的机制。兼职家教什么都好,一个月挪出三分一时间解决生活费问题。

学习方面,虽然没办法参加项目,不过这两天找到两个在家可做的最佳实践,算是一种安慰。努力……

Continue reading →


12
Jun 10

提高学习效率的方法一——厘清本质的本质

我们每个人每天几乎想着并做着与学习有关的事,并且每个人都有会有类似的结论——学习XX,好难哦!的确,学习知识的体验不但不如对酒当歌时的痛,不如风驰电掣时的快,学习甚至是一种吃苦头的活;学得一门技能很费劲,学得有成就更可以用艰巨来形容。

学习是有难度的,因为学习是一种耗费心力的过程[注1],不过这里边有一个很值得思考的问题,就是有没有可能我们把学习知识的难度估计过高了呢?我们学习所花的时间没有得到高效利用,时效太低了呢?如果你从来没有思考过自己的学习效率的问题,那么答案是肯定的。或许你很聪明,但最多很技巧性的达到最好效率,却始终不能技术地提高学习的效率,因为你没有掌握对方法,因为你学习带有无意识性。这里给出一种提高学习效率的方法——厘清【本质】范畴[注2],清楚理解学习某事物的具体任务,提高学习的自觉性。

Continue reading →

 
博客动力源自WordPress
主题设计出自 WPShoppe