Redian新闻
>
微软前工程师:“ Windows 11 直到现在还在用我 30 年前开发的 ‘ 临时 ’ UI!”

微软前工程师:“ Windows 11 直到现在还在用我 30 年前开发的 ‘ 临时 ’ UI!”

公众号新闻

编译 | 苏宓  出品 | CSDN(ID:CSDNnews)

现在 Windows 11 的「AI 改造工程」正在如火如荼地进行中,其中微软联合 OpenAI 将许多先进的 AI 功能引入 Windows 系统中譬如照片、截图工具、画图等多个旧应用程序上,以及带来最新的 Copilot 功能。

但是,在它进行现代化升级之际,也有网友惊讶地发现,Windows 11 在 UI 维度的更新速度有些拖拉,甚至还在沿用 30 年前的老设计。

披露这一点是来自微软的前程序员 Dave Plummer,他在 X 社交平台上分享了自己曾在 1994 年开发的“临时性”磁盘格式化 UI 当前依然存活在现代化的 Windows 11 中。与此同时,Windows 只能支持 32 GB 的 FAT32 分区也是他曾经“武断性”的手笔。

作为过来人,这也让他警醒诸多开发者,千万不要小看任何一次的开发,即使是一些“临时”的解决方案。

从未更新过的 Windows 格式化磁盘 UI

回忆过往,那是在 1994 年一个下雨的星期四早晨,Dave Plummer 编写了格式化对话框。

当时他所属的团队正忙于将用户界面(UI)从以消费者为中心的 Windows 95(1995 年中期发布)移植到更稳定但资源更密集的 Windows NT(1996 年中期发布的 NT 4.0 首次使用了 95 风格的用户界面)。

Plummer 在 X 上写道:“格式化磁盘是 Windows NT 与 Windows 95 不同之处之一,因此我们必须设计一些自定义 UI。”

Plummer 没有具体说明这些不同之处,但现在来看,当时的 Windows 95 主要使用 FAT16 文件系统来处理所有文件,它被用于处理硬盘、软盘等存储介质上的文件和文件夹。 

后来即使是早期版本的 Windows NT 也开始支持多种文件系统,包括 FAT、NTFS 等。

当时,“我拿出一张纸,写下了格式化磁盘的所有选项和选择,如文件系统、标签、簇大小、压缩、加密等等”,Plummer 说道,“然后,我基于 Visual C++ 2.0,并使用资源编辑器将你(用户)必须做出的所有选择按大致顺序排列成一个简单的垂直堆栈。这样做并不优雅,但在优雅的 UI(用户界面)出现之前,这样做还是可以的。

这在当时是创建格式化磁盘 UI 的临时解决方案。但当时 Dave Plummer 难以想象的是,30 年后的 Windows 11 还在用它。

“所以在引入’临时‘解决方案时要小心”,Dave Plummer 表示。

“Windows 只支持 32GB 的 FAT32 分区”也是一个武断性的方案

除了格式化对话框之外,Plummer 还透露称,FAT32 格式化 32G 限制也是他在那天早上做的一个武断的决定。

FAT 是用来组织计算机硬盘上的文件和文件夹的方法之一。FAT32 在文件系统中表示文件分配表的 32 位版本。相比于较早的 FAT16(16位版本)和更早的FAT12(12位版本,FAT32 最显著的优势是它支持更大容量的硬盘和文件分区,因为它使用了 32 位的文件分配表项,允许更多的文件和更大的分区。此外,FAT32 还允许更长的文件名和更好的簇大小管理,提供了更好的性能和存储效率。

不过随着技术的进步,FAT32 安全性差,最大只能支持 32GB 分区,单个文件也只能支持最大 4GB,这使得它在大容量存储和现代操作系统中的使用受到限制。

几年前,Dave Plummer 也特别发了一个 YouTube 视频回忆了这一功能,并表示当时自己想的是如何为 Windows 用户带来良好的潜在支持,也必须要决定 “集群松弛”的程度。

最终发现,庞大的群集数量会带来同样庞大的容量,但也会造成巨大的空间占用。譬如:选择 32KB 的群集大小,即使是最小的“Hello,World!”程序所需的几个字节,也会占用 32KB 甚至更多的磁盘空间 。

于是,他武断地直接将 FAT 的格式化大小限制在 32GB。

“这个限制也是那天早上的一个任意选择,但它作为一个永久性的副作用一直伴随着我们”。在现代 Windows 版本中,我们仍在使用这一限制——通过命令行或其他工具格式化的 FAT32 硬盘最大容量在 2TB 到 16TB 之间,具体取决于扇区大小。

“这是我犯下的,一个不能被原谅的致命错误...... 归根结底,这是一个简单的缺乏远见的问题,再加上临时解决办法变成永久性解决方案的老问题”,Dave Plummer 曾在播客中说道。

Plummer 还参与了 90 年代和 2000 年代初 MS-DOS 和 Windows 应用程序的许多零碎工作,包括任务管理器、Space Cadet 弹球游戏和随 Windows XP 一起提供的第一版产品激活系统。后来,Plummer 于 2003 年离开微软。

微软为什么不更新此 UI?

也有人好奇,为什么微软更新了 Windows 11 的诸多功能与 UI,为什么会忽略这么一个老旧的界面?其实想想,也不难理解。

其一,在没有出错的情况下,此 UI 的迭代优先级可以一降再降。作为全球第一大桌面端操作系统,Windows 系统的生态及其复杂性有目共睹。日常维护和更新 Windows 更是一项艰巨的任务,需要多个团队和多年的工作。此前,微软特别开设了一个独立的 Windows 部门来负责 Windows 的功能开发与维护,直至近年来,才将其瓦解并入“云计算与人工智能平台”部门,所以对于有些没有出问题的功能以及 UI,一直沿用以前的设计也不足为奇。

其二,外媒 Ars Technica 认为,Windows NT 版本的“格式”对话框得以保留至今,也是因为微软在 90 年代末和 21 世纪初发布的 Windows 2000 和 Windows XP 中开始使用 NT 代码库。尽管微软在不同版本的 Windows 中进行了许多更新和改进,但 Windows NT 作为内核的基础设计依然保持了稳定。因此,即使是 Windows 11,内核和其他关键系统文件仍然会携带“Windows NT”的标签。

“代码里的临时方案,最终都成了永久方案”

Plummer 的一个追忆引发不少网友的讨论,也让许多有过“把临时方法作为永久性方案”的程序员感同身受。

来自 HN 上的 jaydeegee 表示,“大约 14 年前,在我从事新工作的第一周,我拼凑了一些代码来完成了查询我们的票务系统 (BMC Remedy),作为一种准队列监视器。直至今日,它有一些外观迭代,但仍然运行相同的后端代码。”

也有不少用户认可道:

  • “我想说,没有临时和永久的解决方案,但有好的和坏的解决方案。一个好的解决方案,即使实施得很快,也会坚持下去,因为它(足够)很好。一个糟糕的解决方案也可能会持续存在,如果它是一段时间内唯一可用/可行的解决方案,那么其他所有解决方案都必须向后兼容。”

  • “抛开任意不必要的限制不谈,我对保留旧代码很满意。它经过了时间的考验,过往由于较旧的硬件限制,现在依然可以非常高效地运行,并且符合逻辑 。与今天的软件不同,今天的软件通常都是臃肿的造轮子,几乎完全出于以下两个原因:一是为了营销“改变”,二是为了跟踪你所做的一切,以便他们可以从中获利。”

作为程序员,也有不少人和 Plummer 一样,呼吁应该谨防“足够好”的临时解决方案,“我们正在使用一个由实习生编写的核心日志记录组件,其中包含 POC(概念验证)一词。它的数据格式是实习生创建的,但当任何人真正注意到它编写了如此多的数据时,修复它的预算和工作量都超过了它的问题。”

最后,在开发过程中,你是否有过“代码里的临时方案,最终都成了永久方案”的经历?欢迎留言分享。

参考:

https://arstechnica.com/gadgets/2024/03/windows-current-disk-formatting-ui-is-a-30-year-old-placeholder-from-windows-nt

https://news.ycombinator.com/item?id=39811604

https://twitter.com/davepl1968/status/1772042158046146792

END

官方站点:www.linuxprobe.com

Linux命令大全:www.linuxcool.com

刘遄老师QQ:5604215

Linux技术交流群:2636170

(新群,火热加群中……)

想要学习Linux系统的读者可以点击"阅读原文"按钮来了解书籍《Linux就该这么学》,同时也非常适合专业的运维人员阅读,成为辅助您工作的高价值工具书!


微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
恭喜机械工程师L先生成功出海!机械工程师的成功:中国机械工程类职业如何出海?体验 | 在港半年就有7个男生追我,为何到现在还没有男朋友!这个“临时方案” Windows 用了 30 年,网友:段子源于现实Meta 开放 MR 操作系统,会成为头显界的 Windows 吗?超实用!满足等保要求的基线核查脚本:linux & Windows微软“砍刀部”杀死Windows的Android子系统年前工作日,AI急救打工人今天起,Windows可以一键召唤GPT-4了30 多年前被 Linux、Windows “ 灭掉 ” 的操作系统 MS-DOS 4.0,微软在 GitHub 上开源了玩个心跳逃离 Windows!德国又宣布迁移到 Linux,,官员吐苦水:Windows 对硬件要求太高了Windows版Bun将于本月发布,Zig编写的JavaScript运行时AI破译2000年前「上古卷轴」登Nature头版!21岁计算机天才,谷歌华人工程师共获大奖狼子野心暴露 #郭文貴 開辦農場大肆斂財《阴阳鱼》连载第17章:时间如刀,空间如砧板,而你我都不过是鱼肉微软正式开源专为Windows打造的sudoWindows 10 明年退役!微软收费预警:每台 PC 起步价为 441 元!现在,Windows 可以一键召唤 GPT-4 了微软正式开源专为Windows打造的Sudo可怕!谷歌前工程师杀害4岁双胞胎儿子,浴缸内枪杀妻子!恭喜金融数据与软件工程师Z先生优才移民成功获批!金融界的软件工程师如何出海?Rust 修复了 std 库中 Windows 10/11 的关键命令注入缺陷巴尔的摩大桥幸存者家属: 倒塌前工人们在车里休息外婆要买的三大件【免中介+免两月】【那些年我们住不到的房源】【波士顿中心天际线】【【精致奢华】【近绿线】【Downtown/Chinatown】还在等上庭!​5华人被捕,搜出大量假ID礼品卡!美警:他们在利用我们的友善“小而美”Tauri已支持iOS和Android,你还在用“技术毒瘤”Electron?美股基本面 - 2024_02_04 * 晨报 * 红海局势持续紧张 苏伊士运河1月收入锐减近一半。那些被GLP-1吓到的美股Windows 远程不要再用 mstsc 了,这款开源工具更好用!“Fellows是一张永久有效的门票”|纪源Fellows六周年特别企划开源日报 | AI PC价值在哪?Windows格式化对话框的UI用了30年;丑头像生成器;独立Redis Copyleft分支Windows这么牛的功能你居然砍了?!Windows格式化对话框是一个使用了30年的 “临时解决方案”太牛了!大神把Windows 11 压缩到 100MB!恭喜工程师G先生成功出海!软件工程师的赴美之路:网络科技时代下的新生力量!中国计算机类职业如何出海?
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。