百年计算机

2021-01-09 18:09:30

我们回头看一下带有玫瑰色眼镜的老式计算机,但是我们可以期待它们吗?使用寿命为100年的计算机会是什么样子,我们将如何构建它?在本期中,我希望您重新思考我们在设计长期可持续性方面对反向计算的了解。在此过程中,我将介绍我称为“传家宝计算”的东西。这是我撰写的有关未来100年计算的系列文章的一部分,该系列名为“我们可能链接”。

从The Dork Web上阅读故事的最佳方法是通过电子邮件。在下面注册以尝试。

本期音乐由位于纳什维尔的二人组Hammock创作。阅读完此书后,您将要播放并保持它运行。本期的照片是来自不同时间和地点的人们的家庭照片以及我拍摄的原型照片。我在这个问题上违反了Substack的限制。我想添加更多指向定义的链接,但不能。我将在下一期中添加缺少的链接,定义和资源。

威廉·吉布森(William Gibson)说:“未来已经来临,只是分布不均。”他是对的。在太平洋的相反两侧,购买“赛博朋克2077”的过程大致相同。升级是完全不同的体验。

是什么使计算如此so肿?我说“电子”很容易。 20年前我曾说过“ Java”或“ Shockwave Flash”。较新的软件往往会变大。较新的系统往往会更快。如果我在使用10年的计算机上运行Windows 98,它的闪电般快。如果我从1998年开始在计算机上运行它,速度会慢很多。

尽管Windows 98已经使用了20多年,但仍可满足高达75%的通用计算需求。 Windows XP,可能是95%。 Windows 10 PC值得从XP升级吗?我不会在XP中编辑4K视频,但在大多数情况下,我会拒绝。

程序只能添加太多功能,直到某些功能变得足够好为止。在这一点上,新功能增加的价值越来越小。在某些时候,人们不再想为升级付费。 Windows XP 1Password甚至在iPhone上都发生了这种情况。我脱离苹果生态系统的原因是放弃了3.5毫米耳机插孔。我知道有人因为3.5毫米插孔而尽可能久地坚持第一代iPhone SE。 iPhone达到了顶点。此后,添加的每个新功能的价值都小于被删除的功能。

如果完美的iPhone是第一代iPhone SE,为什么不坚持呢?为什么不改善可持续性或可维修性?因为苹果的股价取决于每年销售更多的设备。这种有害的动机远远超出了技术。

为了使绿线更好的季度增长,科技公司希望经常性收入来源。出售新软件或更好的软件,将其出租以保持供应商的正常运转,这样周期就可以继续。为了证明付款的合理性,无论是否需要添加功能。无论用户是否需要这些旧功能,这些旧功能在商业上都不可持续。软件即服务模型太容易导致寻租形式。泰勒·科恩(Tyler Cowen)在上面深入探讨了寻租的经济学。

从未完全意识到M1 Macbook的真实成本。它绝不会包括整个供应链的全部环境生产成本。它永远不会包括回收所替代产品的全部成本。如果在一台新的Mac上降价将近$ 3000,使您的生产力提高3000倍,它甚至可能值得您付出总成本。但是不会。

更换计算机有两个原因。一个是人为地放大了对令人兴奋,新颖和闪亮的东西的渴望。另一个是软件无法在8Gb RAM下运行。当真正发生的事情是庆祝可持续性失败时,我们称此替代为“升级”。

购买新的M1 Mac可能会让您感到兴奋,甚至过一会儿也会更开心。这是一个不同的价值主张。发光的评论暗示正在发生令人兴奋的事情。您可能会觉得自己想加入其中。您可能不想知道电子​​设备的人工成本。您只想运行Slack而不会出现旋转的沙滩球。如果您想了解更多信息,请解锁。

寻求软件寻租有助于将硬件推入垃圾填埋场,并将受剥削的孩子推入早期的坟墓。这样做是为了使绿线上升更好。没有任何一个应用可以做到这一点。并非每个SaaS应用程序都在寻求租金。但是,整个软件寻租生态系统很糟糕,我们需要停止启用它。

我们可以完全不同地进行计算。目前,我们正在构建软件以填充新硬件。我们构建硬件以提供新软件的容量。如果我们专注于为已经“足够好”的产品提高可持续性呢?如果不是设计使用寿命为5年的计算机,而是设计使用寿命为50至100年的计算机该怎么办?

我最喜欢的计算机是我的Commodore Amiga4000。这是我梦dream以求的机器。从在Telegram上浏览信息到建模COVID统计信息,我所做的事情都是他们的正确想法所无法企及的。但是,即使我将近30岁的Amiga也从未设计过50年的寿命,更不用说100年的使用寿命了。 Amiga使用了上世纪90年代制造的定制芯片。要设计具有100年使用寿命的产品,我们必须对计算机的使用和作用有完全不同的看法。

我们过去经常离线使用计算机。在家里,我们会玩游戏,查找事实,写信,存储食谱,也许还有少量存货。大多数人会购买(或复制)程序。有些人会自己写。今天,我们完成了大部分工作,但系统永久在线。这种便利是有代价的。中断会中断对本应为本地数据的访问。导出信息可能很困难,即使不是不可能。

如果需要,我们可以制作离线优先软件。不便之处在于给我们带来的不便。不是针对用户,而是针对供应商。无法获得可靠的遥测,跟踪或获利数据是很不方便的。当计算机始终处于联机状态时,它们就有遭受攻击的风险。当假定计算机始终处于联机状态时,网络故障将是灾难性的。对于一台设计成拥有第一任主人的机器来说,永远无法在线。

传家宝计算机将具有非常不同的计划过时类型。随着时间的推移,它会随着家庭的发展而发展。今天制造的这种设备在100年后看起来会非常不同。我们可以使用现有的废料技术采购零件。对于传家宝计算机,与奴隶劳动最接近的事情是一个被迫在计算机上做作业的孩子。

如果我们不能一直保持在线状态,则传家宝计算机必须首先处于离线状态。这将是无干扰的。这将是家庭文件的家。一个存储食谱,笑话和故事的地方。它不是家庭中唯一的计算机。周围会有更快的计算机,但它可能成为家庭的数字花园。

当您的孩子期待时,他们可以为此保留日记。他们在您之间来回链接的笔记将建立一个家庭生活的亲密故事。您最小的孩子的婚礼,是孙子问妈妈的有趣事情。有一天,孙子可能会写关于您的葬礼的信。这将是令人难过的一天,而传家宝计算机可能会消失一段时间。几年后,他们将其启动,却发现父亲告诉他们的几乎每一个恶作剧都是来自您的。一台传家宝计算机将成为数字鬼魂的家,告诉人们他们从未见过有关他们是谁的故事。

无论行销活动告诉您什么,现在都不是时候安装可能持续十年的应用程序。这是一家人的个人历史,世代相传。这是您小时候拥有的所有东西,您将永远无法传递。这就是您从身边不再与我们在一起的成长过程中忘记的所有事情。有一天您将离开,从未见过您的人将通过一台传家宝计算机了解您。

大多数软件都有错误。当代码遇到结构错误的数据时,就会出现错误。该软件在处理之前无法验证数据。这会导致崩溃甚至更糟。

长寿,没有错误的软件是不现实的。我们无法保证系统会收到更新。我们也不能确定有人会应用它们。相反,好的长期软件应该适当地降级。我们应该期待错误。失败应该迅速但可以恢复。软件应小而简单。一个简单的工具在做一件事情时会做得更好,而这要比复杂的工具做得太多而更好。

硬件设计过程会随着时间而变化。我们无法制造某些定制芯片,因为制造工艺已不复存在。关于使用铅焊料的监管规则将行业转移到了使用寿命较短的无铅焊料。当我们追求新的制造过程时,我们常常会失去旧的过程。土地法则和物理法则都剥夺了我们的维修权。

我们应该承认,随着时间的流逝,硬件将发生故障。好的硬件(如好的软件)应正常降级。 100年使用寿命的系统可能需要数十年才能访问可用的显示器。钥匙和驱动器可能无法工作。如果没有使用该系统,我们应该期待数年甚至数十年的过去。

如果我们接受硬件故障,则系统需要的不仅仅是备件。在100年的使用寿命中,将不再制造某些零件。有些零件不会发明75年。零件接触不良不会导致功能丧失。我们拥有100年历史的计算机需要能够在具有不同可靠性的不同硬件的不同系统上运行。

几年前,我曾尝试设计Chip-8手持式原型机。 Chip-8是一台虚拟机,从未实际存在过。 RCA用它来创建70年代的乒乓球游戏机。通过虚拟化简单的设计,我们可以将其扩展到我们的需求。这是在旧版iPhone上钻孔以添加耳机插孔的软件版本。

因为我们需要扩展,维修和更换部件,所以100年使用寿命的计算机不能成为黑匣子。它的设计必须是开放的。它必须使用开放协议和总线。无论今天我们建造什么,明天最多都将进行逆向计算。

我的开放式可持续计算机首字母缩写沙拉包含PS / 2,VGA,SPI,TWI和UART。用简单的英语来说,每个都是带有手工焊接连接器的开放标准。

如果计算机的SPI连接的SD卡插槽掉了,我们可以用损坏的数码相机连接器进行更换。在最坏的情况下,我们可以将SD卡直接焊接到计算机上。 SD卡不会使用100年,但是可以与之对话的代码。对于新形式的开放式存储,我们可以创建适配器。今天发生这种情况。我的Amiga早于高容量CF卡要几年了。

VGA支持仅需要3个电阻器,一个连接器和一条硬盘驱动器电缆。如果AR隐形眼镜成为主流,人们将找到连接VGA设备的方法。

速度较慢的串行接口是可降解的,简单的,并且可以处理所有事情。 USB连接器在我们的时间表中不会有机会。没有USB,输入将如何工作?较旧的PS / 2标准很好。如果没有连接器,我们可以将电缆和电线直接切断到设备上。如果不再使用键盘,则可以通过PS / 2适配器连接替换的键盘。

但是软件是什么?它会使用哪种操作系统?需要什么样的CPU?多少内存?

CollapseOS项目对此有有趣的看法。它通过完全生态崩溃的棱镜来探索计算。他们的操作系统使用在较旧的可修复系统上运行的Forth语言。我非常欣赏CollapseOS。虽然传家宝计算可能会分享一些想法,但并不完全合适。我发现山坡太陡,家用计算机无法攀登。

CollapseOS确实使用基于Forth的虚拟机。借助Forth的极简主义,可以轻松支持各种平台。对我来说,仅Forth有点太少了,但CP / M并不是。

Gary Kildall的微控制器控制程序(CP / M)于1974年发布。到1981年,CP / M成为事实上的业务标准。如果不是IBM与总部位于阿尔伯克基(Alberquerque)的小型公司CP / M之间达成协议,那么进入90年代就将继续流行。

它类似于MS-DOS,并且今天仍在发布软件。它具有多种编程语言和专业应用程序,可扩展。它不假定可以访问Internet,但是可以进行连接。如果Windows XP可以满足某人的通用计算需求的95%,则CP / M可以以较低的速度满足40-60%的需求。不要期望在CP / M上编辑4k视频。专业的电子表格,文字处理甚至专业的数据库应用程序都可用。

与独立的Arduino Uno相比,仿真CP / M需要更多的精力。 Jeelabs已经将CP / M 2.2移植到STM32微控制器上。 STM32芯片无处不在。您将在笔记本电脑,汽车,屏幕,手机,甚至洗衣机中放一些东西。 ESP32是另一个物联网友好的候选对象。只要存在通用的硬件基准,我们就应该能够以容量为目标。

ESP32 VGA支持的工作已经由比我聪明得多的人完成,例如Bitluni和Fabrizio Di Vittorio。 Fabrizio不仅使VGA正常工作。他构建了一个漂亮的多会话CPM Plus实施,可以实现我期望的80%。

现在,我有了一个由回收零件制造和维护的开放式传家宝计算机的概念。我想我应该建造一个。

当我在2019年末开始草绘概念时,我以为在2020年就可以准备好这个概念,所以我称之为ZX20。我忘了另一句格言,霍夫施塔特定律:

即使考虑到霍夫施塔特定律,它总是比您期望的更长的时间

我构建了具有工作图形和声音的BASIC解释器。然后,我了解了为什么BASIC是一个不好的举动的艰难方法。每个BASIC实现仅与其他每个实现半兼容。我可以编写程序,但没有太多其他可以使用的了。我曾经模拟过ZX Spectrum,但是并没有实现我的目标。然后,我看到了Fabrizio的Altair 8800仿真器,并意识到CP / M可能是一种选择。

CP / M并不是理想的操作系统。它笨拙而基本。这足以完成工作。您可以在10分钟内学会它,并在一个下午掌握它。尽管CP / M具有自己的文件系统,但Fabrizio的版本使用SD卡上的常规文件。它还具有其他功能,比常规的CP / M计算机更易于使用。

CP / M在64k RAM中运行,磁盘大小在88到360kb之间。我在64Gb MicroSD卡上运行它。当前的设计是单板,但我接下来将建造RC-2014型背板。这减少了我需要构建的完整原型的数量。完成后,完全堆叠的系统可能具有以下特点:

可选音频(最多2个3.5毫米插孔或RCA插头,一个TBC DAC和ADC和TBC控制器,可通过I2S或SPI处理声音)

到目前为止,除GPIO扩展器外,我已经为每个开发板建立了单板原型。除了COVID和英国脱欧之外,明年应该会看到第一个完整的原型。

我和朋友谈论过。在RingZer0培训中的Saumil Shah要求我为今年帮助过他的人打造一些东西。在您阅读时,有几个人手里拿着Retro Zer0计算机,或者他们正走过去。

当我和我的搭档开始搭建电路板时,我写了60页的快速手册。我无法共享我的SD卡,但可以共享手册,设计等。您无法购买Retro Zer0,但我将开源有关ZX20项目的所有内容。

如果要购买产品,请购买Fabrizio Di Vittorio的FabGL板。他建立了一些东西,使我大部分时间从想法跳到概念验证。我的设计主要依靠他。如果您想自己建造一个,我将拥有KiCAD图纸以及下一期的更多内容。

Retro Zer0不是ZX20,而是共享DNA。我要感谢Saumil Shah和RingZer0的培训,这次机会为这次探索提供了资金。我还要感谢Fabrizio Di Vittorio,他的工作使我很敬佩。

您可以在Mastodon和Secure ScuttleButt上使用#ZX20主题标签关注该项目。尝试此操作的最佳方法是全屏运行CP / M仿真器。 Udo Monk的Z80Pack是参考CP / M仿真器,尽管MockbaTheBorg的RunCPM也值得一看。 MockbaTheBorg的CP / M运行的版本比Fabrizio Di Vittorio的CP / M Plus的版本旧。该项目的Github页面链接到应该同时在两者上使用的广泛软件库。它还支持文件系统上的文件,而不是CP / M磁盘映像。这意味着您可以从RunCPM开始,稍后再构建传家宝计算机,并在完成后转移到开发板上。如果您只想在网络浏览器中尝试CP / M,Stefan Tramm的模拟器设置很小,但可以正常使用。

我没有看到有人像我在这里使用传家宝计算一词。没有人拥有这个名词。我鼓励您考虑自己对传家宝计算可能是什么的想法,并尽可能实现它们。更具可持续性的主流计算机会是什么样?我们可以将CPU移至仅在低功耗CPU需要时使用的辅助控制器吗?我们能否通过减少手机的使用量来制造更具可持续性的通信设备?您不必被Wintel缠身困扰。

我的方法可能会导致死胡同,今年我已经找到了两个。今天的零件甚至可能无法进行100年的计算。那就是它的美。我现在可以播种100年计算的种子,但是我永远也看不到这棵树有多高。我只是希望将来人们能找到享受阴影的方法。

Techtinkering向您展示了如何使用Udo Monk的Z80pack进行安装和运行。 Mike Hoye在基于空字符的字符串终止的起源方面有出色的论文。 Vega Deftwing的Opinionised Guides是我正在阅读的挤满了数字花园。

Hype Machine建立了一个页面,可为您提供Spotify播放列表中的bandcamp链接,以便您可以更直接地支持自己喜欢的艺术家。 Oona写了一篇很棒的文章,介绍了唱片和幻想唱片播放器的模式。

自Vulfpack以来,“恐怖口袋”是我听到的最时髦的东西。 多亏了Craig Butcher,我将带给您我所听过的最有趣的Eleanor Rigby封面。 我要给您提供Nicholas Sparks的《 A Walk To Remember》一句话。 有时候,我希望我可以倒回时光,消除所有的悲伤,但是我有一种感觉,如果我这样做了,那欢乐也会消失。 如果您喜欢这个问题,请与您的朋友分享。 如果您希望收件箱中的每个问题,都可以在下面注册。 我将在两周后返回,并提供更多Retro Zer0图片和更多来自The Dork Web的故事。