找回密码
 注册

QQ登录

快捷登录

新浪微博登陆

搜索
CDD 法语助手

讲点基本的编程知识

10
回复
595
查看
[ 复制链接 ]
头像被屏蔽

新浪微博达人勋

提示: 该帖被管理员或版主屏蔽
2008-3-10 23:29:08

新浪微博达人勋

编程学什么?要学其中不变的东西,这样才能够以不变应万变!
编程中什么东西不变?编程的思想不!
为什么编程的思想不变?因为计算机的原理不变!
计算机的功能=计算+存储,而计算机的功能实现由软件来体现。
所以软件相对应的就是算法+数据结构
计算机中有那些算法?计算+赋值+比较+跳转。
这个特点从机器吗到面向对象从来就没有变化过。
机器语言=操作码+地址码+ 操作数
高级语言=运算命令+转移命令+数据变量
所谓命令的顺序执行其实也是跳转,只不过向后加一的无条件跳转。
计算机中的东西翻来覆去也就有限的几个,那些基本的东西从计算机诞生开始一直就没有变化过,他不可能变化,变化了就不是计算机。
我们之所以把显示器、打印机等设备称作外围设备,因为这些东西所完成的功能不是计算+存储。判断一个东西是不是计算机,你只要看他是不是具备了计算加存储的功能。
2008-3-10 23:29:24

使用道具 举报

新浪微博达人勋

计算机的多任务是通过时钟中断来实现的,保护模式方便了内存的管理,有了多任务的能力,建立多用户当然是理所当然。
无论是多任务还是单任务,设备驱动是不可缺少的。内存管理也可以认为是设备管理的一种。
如果要实现多任务,那就必须让计算机具备分时运行的能力,分时运行的原理如下:
把任务管理程序和时钟中断连接起来,当时钟中断产生后,就调用任务管理程序,也称为任务调度。由于任务调度程序去调用其他的程序。
例如有程序一、程序二2个程序需要同时被运行
当时钟中断产生后,任务调度程序启动,启动后调用程序一,这时候控制权力在程序一手上,
当时钟中断又来到后,任务调度程度启动,首先把控制权从程序一中取回来,其次把程序一的执行状态记录下来,然后调用程序二,这时候程序二接管了cpu。
当时钟中断有发生后,任务调度程序启动,任务调度程序控制着cpu,首先把程序二的状态保存下来,然后恢复程序一的当时中断后的状态,通过调用把控制权交给了程序一
就这样周而复始的一个一个程序有序的分时执行。
2008-3-10 23:30:51

使用道具 举报

新浪微博达人勋

以学校发生的真是故事讲述任务调度原理:
一个教室里面一个有1个老师和10个学生和一张讲台,讲台上同时只允许一个人讲话。
首先老师上台讲话:“同学们,现在你们轮流上讲台发言,每人3分钟,如果3分钟讲不完,可以下次轮到你的时候再继续补充。”
然后老师按动了手上的闹表,设定闹钟时间3分钟,这只闹钟以后每过3分钟打铃一次。
首先老师请张同学讲话,然后张同学占用了讲台开始开讲。
3分钟后老师的闹钟响了,于是老师上打断了张同学的讲话,并且把张同学刚才讲到哪里了记录下来,老师让张同学下了讲台,请李同学上来讲话。
于是李同学上了讲台发言,当李同学讲到一半的时候,老师的闹钟又响了,老师把里同学讲到哪里了记录下来,然后请王同学上讲台发言。于是王同学开始在讲台上讲话。
。。。。。就这样一个一个轮流上讲台讲话。
当再次轮到李同学讲话的时候,老师拿出了备忘录,告诉李同学刚才讲到哪里的时候停下来的,让李同学接着前面的话题继续发言,3分钟后闹钟又响了,老师同样告诉李同学接着上次讲的继续讲。。。。。。。
张同学通过多个3分钟的时间把所有的东西讲完了,他的演讲任务结束了,于是他退出了他的演讲进程。
这时候教室外面的赵同学也进入教室想发表演讲,于是他向老师要求加入上台演讲,于是老师同意了,赵同学开始了他的演讲进程。
老师的角色也相当于一个电视台的主持人,大家看到电视太节目中,主持人的能力很有讲究,他会依据当时的环境,动态安排每个人的发言,对于那些特殊嘉宾,主持人会给他安排多一点的发言机会,而对于普通的人员,主持人会安排较少的发言机会,并且嘉宾提出要讲话的时候,主持人会打断其他人的讲话,把话筒传递给嘉宾,这就是进程的优先级别管理。
2008-3-10 23:32:42

使用道具 举报

新浪微博达人勋

谈谈宏内核与微内核

一个同学要找另外一个同学帮忙,只要这个同学直接找到另外一个同学就可以了,最方便的做法就是把所有的同学聚集起来,你要调哪个就直接点,这样做很直接,效率很高。但是由于各个功能之间的关系很紧密,导致了这种体系难以修改和增加新功能。 一般宏内核的操作系统就是这样直接调用。代表的有 linux

另外一种办法是,一个同学告诉老师,让老师替他去找另外的同学办事,由于通过老师来传递信息,由于老师这个中间角色的存在,你不需要知道你要找的那个人在哪里,就可以通过老师来代办来完成,但是这样做以为导致所有学生都必须聆听老师传递过来让自己做事的消息,并且需要老师这个角色中转,效率没有前一种高,但是管理扩充起来方便。一般微内核的操作系统都采用这种消息机制来实现,内核所做的主要工作就是传递消息。代表的有windows
2008-3-10 23:33:54

使用道具 举报

新浪微博达人勋

这玩艺谁写的?
2008-3-10 23:42:16

使用道具 举报

新浪微博达人勋

百度linxu吧
2008-3-10 23:59:26

使用道具 举报

新浪微博达人勋

原帖由 MiniMarseille 于 2008-3-10 23:33 发表
谈谈宏内核与微内核

一个同学要找另外一个同学帮忙,只要这个同学直接找到另外一个同学就可以了,最方便的做法就是把所有的同学聚集起来,你要调哪个就直接点,这样做很直接,效率很高。但是由于各个功能之间的关系很紧密,导致 ...


照这个意思,,那VISTA是不是老师+课代表?

[ 本帖最后由 walkman 于 2008-3-11 00:15 编辑 ]
2008-3-11 00:14:31

使用道具 举报

新浪微博达人勋

讲的挺浅显易懂,只不过计算机程序的核心是recursive function theory,算法和数据结构都是这之上的东西了。
2008-3-11 00:54:52

使用道具 举报

新浪微博达人勋

面向对象的理论基础是type theory(高阶逻辑),并不是“类就是程序文件”,只不过编译器类型检查的时候帮程序员把大部分工作都做了,程序员也不用很了解type theory就能写出不出错的程序。
2008-3-11 00:58:09

使用道具 举报

新浪微博达人勋

我也看了个搞笑的...............

设计模式之Factory -工厂模式
追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory

設計模式之Builder  -建造模式
MM最爱听的就是“我爱你”这句话了,见到不同地方的MM,要能够用她们的方言跟她说这句话哦,我有一个多种语言翻译机,上面每种语言都有一个按键,见到MM我只要按对应的键,它就能够用相应的语言说出“我爱你”这句话了,国外的MM也可以轻松搞掂,这就是我的“我爱你”builder。(这一定比美军在伊拉克用的翻译机好卖)
2008-3-11 01:34:19

使用道具 举报

您需要登录后才可以回帖 登录 | 注册 新浪微博登陆

本版积分规则

返回顶部