Keyboard shortcuts

Press or to navigate between chapters

Press ? to show this help

Press Esc to hide this help

第一百零一章:尝试连接两台计算机

复习

  • 操作系统让一台计算机能管理本地的程序、内存和设备。

TL;DR

  • 两台计算机通信的最小目标,是让一端的 0 和 1 在另一端被可靠区分。
  • 一根线只解决“能传过去”,还没有解决“传的是什么、给谁、怎样跨越更多机器”。

正文

  把两台已经启动的计算机用一根导线相连。最朴素的约定是:一段时间内有较高电压代表 1,较低电压代表 0。左边依次改变电压,右边在相同时间观察电压,两边就有机会交换比特。

  这已经是通信,但远没有“发一条消息”那么简单。接收方要在正确时刻测量;电压会因线长和干扰变形;两边还要知道一串比特从哪里开始、在哪里结束。网络并不是突然出现的云,它先是一段物理信号和一组共同约定。

  下一章先看比特可以借哪些东西旅行,而不是急着给它们套上复杂协议。

思考题

为什么仅约定“高电压是 1、低电压是 0”还不能保证通信成功?

小结

  • 通信首先要让物理状态承载并传递比特。
  • 双方需要共同约定如何发送和观察这些状态。

思考题答案(仅供参考)

  双方还要同步测量时刻,并应对衰减、噪声和一段消息的边界等问题。

协议

本文采用 CC BY-NC-SA 4.0 协议发布。