Featured

我在网易云课堂上的收费课程购买链接

我在网易云课堂的课程终于上线了,价格是100元人民币,网易提供了平台,会分成30%,国家还会收20%的意外所得税。如果通过我的推广链接购买的话,我能多拿一些钱。

如果你是通过我的电台,公众号或者网站知道的话,希望你能通过这个网易推广链接去购买。

网易推广链接:https://study.163.com/course/courseMain.htm?courseId=1005687008&share=2&shareId=1019590015

购买以后,可以加答疑QQ群,群号是838202226。我的个人微信是 liuyandong00 。

项目一边做,一边录视频,一边布署,项目的布署地址为 lmzdx.net


如果你也部署项目,上国际互联网,想购买vultr.com主机来,可以用这个推广链接,这样你我可能都能节省25美元。

226. Intel曾经差点就放弃了CPU

上一期讲到了日本计算器公司的Masatoshi Shima来Intel催一下CPU的进度。Intel说没完成,Shima同学就火大了,Intel最后还是妥协了,因为工程的延期,退还了60%的定金。那个在意大利只上过中专的费德里哥·费格金(Federico Faggin)出马了。从日本来的这个Shima同学也是工程师,他动之以情,晓之以理,给Shima解释了为什么你们公司的设计不合理,按照原来的设计,要12-15块芯片,每块芯片大概有1000个晶体管,成本是155美元,这样的话,是不可能造出3000美元的计算器还能赚钱的。

Continue reading “226. Intel曾经差点就放弃了CPU”

[忽软忽硬] 动手做电脑 008 电路注意事项和芯片的选择

1. 教科书和现实世界的区别与联系

在前面的视频里讲布尔代数的时候,我讲到了二进制,除了布尔代数之外,还有个很重要的原因是用二进制在工程上是最简单可靠的。

Continue reading “[忽软忽硬] 动手做电脑 008 电路注意事项和芯片的选择”

[忽软忽硬] 动手做电脑 007 布尔代数与逻辑门

上两个视频我们讨论了晶体管的工作原理,对我们来说,只需要 用到晶体管的开关功能。对计算机来说,当电流通过晶体管的时候,表 示一种状态,当电流不能通过晶体管的时候,又可以表示一种状态。这 两种状态也有个学名可以称之为”二进制“,英文叫 binary。

Continue reading “[忽软忽硬] 动手做电脑 007 布尔代数与逻辑门”

225. 英特尔第一款通用CPU: 4004的故事

今天是2019年最后一天了,希望大家在新的一年好好过吧。实际上,时间是人类自己发明的一种刻度,对老天爷来说,2019也好,2020也好,对他来说都是一样的。前两年我还在年末的时候统计一下,做一个电台的总结,今年不想搞了。大概和去年差不多吧,公众号的关注人数可能增加了3000-4000人吧,电台也可能有个几千人,我也懒得去统计了。

Continue reading “225. 英特尔第一款通用CPU: 4004的故事”

什么是DNS根服务器,真的只有13台么?

什么是DNS?

三个英语首字母的缩写,Domain Name System。用来把google.com或者bing.com这样的网址转换成IP地址。比如下面这样

那这些信息是谁给的呢?是DNS服务器。上面这张图倒数第三行有个 127.0.0.53#53,就是这里给的,我的是Ubuntu,开启了systemd-resolved服务。

大部分人用的是运营商提供的,比如中国电信,中国联通,都有自己的DNS。

DNS的工作流程

  1. 在浏览器里输入google.com的时候,会到本地运营商那里去查询。
  2. 如果运营商那里没有,会再去上一级查询
  3. 最后查到了DNS root servers,如果有google.com的记录,返回
  4. 如果DNS root servers没有记录,那怎么办?会根据你的后缀名,比如.com, .org, .net去TDL(顶级域名商Top-Level domain)的域名服务器里查查

一般情况下,第一步就结束了,后面几步根本用不上。

第4步,注册域名是要交钱的,每年几十上百的,顶级域名商是要提供DNS服务的,如果这都不提供,那这生意就别做了。基本上用不到第4步。

为什么只有13个呢?

我认为一个可信的答案是,没人知道为什么是13个,大概是设计者当年的生日吧,或者前期就找了13台电脑。

我知道有人分析过为什么是13个,从IP包或者UDP包的大小上来分析,算个除法,只能容纳13台服务器,那明显是瞎扯,强行向里凑数,而且把bit和byte都算错了,512byte / 32bit 是不可能等于13整数外加96byte的。

不过这个解释流传太广了,感觉像真的一样。实际上没法自圆其说。

这13个服务器的命名是这样的a.root-servers.net, b.root-servers.net, c.root-servers.net …… m.root-servers.net

网上传的这13个服务器分布在哪里哪里非常机密的地方更是搞笑,实际上这13个root-servers分布在12个地方,有个叫VeriSign. Inc有两个,这个公司还是.com, .net, .gov, .edu等一些顶级域名的运营商。

根服务器里是什么?

前面渲染的这么NB,那肯定存的也是NB东西了?哈哈,恰恰相反,只存了一个2M大小的文本文件,文本文件里记录了2000来个顶级域。

顶级域看起来很高大上的叫法,实际上我们天天使用,分为通用顶级域和国家顶级域。

通用的就是像.com, .net, .edu这些。

国家顶级域就是.cn是中国,.sb是所罗门群岛国家及地区顶级域, .us是美国的。还有一些非英文字母的域名,比如 .中国 .台湾 .香港这些都是国家顶级域名。

任何人都可以下载下来,网址在这里:

Root Zone File 下载地址

怎么感觉没什么技术含量?

确实没技术含量,就是一些文本文件,记录了一些信息,能有什么技术含量呢?所以,本质上,能做根服务器,靠的不是技术,而是良心。

就像中央银行一样,在二战时期,波兰把黄金存到了英国的金库里,最近,2019年了,才运回去,人家英国认账。

同样是存黄金,西班牙把500多吨黄金存到苏联,斯大林问,你们黄金送来了?我怎么没收到呢?

存黄金和存Root Zone File 一样,信誉是最重要的,你只要保证不改动这个文件,就能和那13个根服务器一样。所以,现在有1000多个根服务器在运行。

如果有人改了呢?

只要是正常人,肯定会觉得,攻击这种最基础的服务,肯定会发出“始作俑者,其无后乎?”的感慨。因为你篡改攻击了根服务器的文件,肯定会导致大面积的网络故障。

直到,2010年3月份,真有个国家故意污染了根域,只是我忘记了是哪个国家了,而且不止一次,直接导致欧美,智利这些“没见识到世间险恶的国家”大面积断网,智利的网直接闪崩了,达成了facebook,youtube和 twitter同时在多个国家下线的壮举。刚开始以为是故障,后来多次警告以后,某些国家仍“不要,停!不要停!”,导致该国的根域被撤销路由通告。

后记

我记忆之中,只有这一次对根服务器的攻击算是取得了巨大的成功。最后导致该国的根域镜像被撤销路由通告。就好像斯大林骗了西班牙500吨黄金一样,你只能骗这一次了。

再后来,没人肯把黄金存到苏联,都存到英国和美国,斯大林认为这是英国和美国的阴谋。这么说来,13台根服务器好像也是欧美的阴谋吧。

224. Intel公司艰难的起步

还是接上一期接着讲Intel公司,集成电路一个非常重要的技术是,所有的一切都要用硅来制造,不仅仅是晶体管,还包括里面的电阻,触点。用硅触点来代替铝触点被称之为通向数字时代的钥匙。这个技术的发明者是一个意大利移民,他的意大利名字叫费德里哥·费格金。这个家伙的经历也是比较传奇的。

他出生在意大利一个小城市,如果大家喜欢看足球的话,这个小城还是有点小名气的,名字叫皮亚琴察,这个球队出了很多出名的球星,比如西格诺里、因扎吉、吉拉迪诺都是这个球队出来的,可能年轻的朋友都不知道当年这几个大杀四方的家伙了。这个费德里哥·费格金就出生在这个地方,家里很富有,他小时候喜欢造飞机,然后在参加航模比赛的时候经常拿个第一名,但是学习成绩是真不行。当别人都能考上大学的时候,他考上了技校,毕业的时候,去了一家办公用品的公司当工程师,研发办公产品,做的也实在的非常的憋屈。

Continue reading “224. Intel公司艰难的起步”

223. Intel公司的诞生(1)

Intel公司大家肯定都知道,说实在的,我和Intel公司还有一点点小小的缘分,当年中国有个比较Nb的公司叫盛大,就是出传奇的那个公司,他们和Intel合作了一个项目,我在那个项目组里呆了一年多,不过签署了保密协议,我就不说具体内容了,我在里面打杂,在给人倒水,捏肩膀,还有当程序员鼓励师之外,还深入研究了各种流媒体协议和BT下载协议,现在只能在开滴滴的时候告诉乘客我曾经是个程序员。

Continue reading “223. Intel公司的诞生(1)”

[忽软忽硬] 动手做电脑 006 晶体管的工作原理

我主要是想做一台电脑出来,所以对晶体管其它方面的应该不过 多涉及,只专注于 NPN 晶体管。先来做个实验来看看晶体管的工作的 情况。

通过实验可以看到,当中间这个针脚通电的时候,灯泡就亮了。在 计算机中,我们用的就是晶体管的开关功能。晶体管也叫三级管,因 为它有三个针脚,这三个针脚的名字分别是中间的基极 (Base),左边 的发射极 (Emitter) 和右边的集电极 (Collector)。

如果只考虑晶体管的部分,其电路图如下:

Template for the kaobook Class

NPN 晶体管的示意图如上,总共有三个部分,两端是 n 型半导体, 中间是 p 型半导体。前面讲半导体的时候,我们已经分析了 pn 结,在 这里可以用 pn 结来分析,假设我们有一把刀,在 p 型半导体的中间把 晶体管分开,会形成两个 pn 结。

先来看一下正向偏置,假设我们的电压是慢慢升高的,对硅管来 说,当电压升到 0.7V(0.6V-0.8V)的时候,电流会突然增高。这个电 压有个学名叫⻔槛电压或者正向压降。如果是锗管,这个电压是 0.2V

(0.2V-0.3V)。还有几个术语讲一下,p 型半导体这一端叫做高电位端, n 型半导体这一端叫低电位端,这样显得比较专业一点。所谓正向偏 置就是正极接在高电位端,负极接在低电位端。

与之相反的是反向偏置,正极接在低电位端,负极接在高电位端。 在反向偏置的时候,几乎没有电流通过,如果接上一个高灵敏度的电 流表,仍会看到有电流通过,这个电流也有个学名叫漏电流。当反向 电流足够大以后,反向电流会急剧增大,也被称之为击穿。被击穿以 后,晶体管会升温,如果击穿时间很短的话,可能晶体管只是有些损 伤,如果时间⻓的话,晶体管会被烧毁。

[忽软忽硬] 动手做电脑 005 PN结的工作原理

今天最常用的半导体是硅和锗。我们看一下元素周期表就可以看 到,碳,硅,锗是同一列的元素,学名我们把它们称之为同一族元素。同一族元素有什么样的性质呢,最外层的电子数是一样的。我们从上 往下看,六号元素 C 是非金属,14 元素 Si 是半导体,32 号元素 Ge 是 金属。也就是说,是从非金属到金属在递变。在金属和非金属过渡线 上的元素,被称被称之为半导体,顾名思议,就是导电不如金属好,在 室温下多少有点导电,不像非金属一样完全不导电,只有接近绝对零 度,才完全不导电。

按照《费曼物理学讲义》第 3 卷第 13 和第 14 这两章的内容,费曼解释了一个奇怪而不可思议的事情——在完美的晶体中的电子为什么可以穿过晶格运动,即使它与所有的原子碰撞也能完全自由的流动, 这是固体导电的原因。

如果我们人为的往硅晶体里放入一个别的原子,比如硼原子或者 磷原子,会发现硼原子或者磷原子能占据硅晶格中的一个位置,这样一来它就必须表现得与 4 价硅原子一样,用它的最外层价电子与硅形 成晶体键,但是硼原子最外层只有 3 个价电子,就会有一个空穴,磷 原子的最外层有五个价电子,就会多一个电子。

我直接引用《费曼物理学讲义》第 14 章的结论,如果大家对实际 的推算过程有兴趣,可以自己去找书来看看。当晶体中产生“空穴”的 时候,“空穴”的行为像具有一定有效质量的经典粒子一样,所以“空 穴”像一个在晶体中运动的带正电的粒子。“空穴”粒子的电荷是正的。像这种掺杂硼元素的晶体内空穴数目较多的材料称之为“p 型”半导体。(其中的 p 代表英文单词 positive.)

同理,加入磷元素,从而使晶体内电子数较多的材料被称之为“n型”半导体。(其中的 n 代表英文单词 negative.)

如果只有这两种半导体也没什么用,顶多接在电路里能导电,虽 然两种导电有些不同,p 型半导体导电是因为因为空穴,n 型半导体导 电是因为有多余的电子。真正有意思的事情是当两种类型的半导体结 合在一起的时候,神奇的事情就发生了。

当 p 型半导体和 n 型半导体结合的时候,“金风玉露一相逢,便 胜却人间无数。”p 型半导体有多余的空穴,n 型半导体有多余的电子, 那么电子会跑过去来填补空穴。可能大家会想,如果能造出一种有无 穷多空穴的物质,然后再造一种有无穷多电子的物质,然后用导线连 接起来,不就成了永动机了么?实际上是不可能的,费曼在书里已经 解释了为什么不可能,接触的地方又会形成一个类似 PN 结的东西。

两种半导体材料接触的时候,会形成一层不到 1 微米的边界,按 照 wikipedia 上讲是只有十分之几微米那么薄的一层膜。在这一层薄 膜里,会因为电子与空穴的互相渗透,形成一个电势差。对硅来说,这 个电压大概是 0.5V-0.7V,对锗来说,这个电压大概是 0.2V 到 0.3V。

222. 波澜壮阔的集成电路与芯片的故事(3)–仙童公司

这是最后一期讲仙童公司了,仙童公司是一个伟大的公司,如果仔细讲的话,关于他的故事能写出好几本书来,实际上,我手头上就有这本书,书的名字叫《Makers of the Microchip: A Documentary History of Fairchild Semiconductor》,我只讲了这本书上5%的内容吧,这本书没有电子版,我是十年前买的纸质版本的书,大概30美元吧,我买的最贵的书之一,虽然四处奔波了好多年,丢了好多书,但是这一本一直没舍得扔,当时我买这本书的时候,出差在异国他乡,站在人家的书店里看书,300多页不太可能站着看完,30美元,我还是狠了狠心把这本书买回来了。

Continue reading “222. 波澜壮阔的集成电路与芯片的故事(3)–仙童公司”