标签: historical-unix

我听说第一版 Unix 正在恢复是什么意思?

我在别处评论说,第一版 Unix 的源代码是从磁带中恢复的。回应令人惊讶,并要求提供更多信息。

人们做了什么?谁干的?什么时候?如何?

history historical-unix

44
推荐指数
1
解决办法
3965
查看次数

谁拥有 UNIX 商标?

我目前正在参加一门教授 UNIX 基础知识的课程,例如常用命令等。在对 UNIX 进行了一些挖掘之后,我遇到了关于谁拥有 UNIX 的法律斗争和 UNIX 战争的陷阱。我做了一些研究,但来源有点过时(大约 2003 - 2004 年)并且就谁拥有它而言有相互矛盾的信息。

以下是我找到的几个来源:

https://www.zdnet.com/article/who-really-owns-unix/ - 声明 Open Group 拥有它

https://www.informit.com/articles/article.aspx?p=175171&seqNum=2 - 声明 SCO 拥有它

阅读这些资料后,听起来 Open Group 声称拥有 UNIX 商标,而 SCO 声称拥有 UNIX 源代码。我理解正确吗?

historical-unix

40
推荐指数
2
解决办法
7928
查看次数

25
推荐指数
1
解决办法
2657
查看次数

Kernighan 和 Pike 挑战:如何在文件名中添加斜线?

我刚刚在Unix Programming Environment,Kernighan 和 Pike 关于 Unix 的经典书籍中遇到了以下问题(我在 1984 年版第 79 页,ISBN:0-13-937699-2 中找到了以下文字):

练习 3-6。(技巧问题)如何将 / 放入文件名(即,不分隔路径组成部分的 /?

作为最终用户和程序员,我多年来一直在使用 Linux,但我无法回答这个问题。有没有办法把斜线的文件名,这是绝对内核禁止。您可以通过块设备访问修补文件系统,或使用 Unicode 中外观相似的字符,但这些都不是解决方案。

我明白,Linux ?Unix,但同样的原则应该适用,因为系统必须能够明确地从路径中提取目录层次结构。

有人知道,Kernighan 和 Pike 在问这个问题时到底在想什么吗?假设的答案是什么?“套路”究竟是什么?或者也许原始的 Unix 系统只是允许以某种方式逃避这个斜线?

更新:

我就这个问题联系了 Brian Kernighan,他是这样回答的:

答案是(或曾经)“你不能。”

因此,蒂莫西·马丁是对的,得到了​​绿色的勾号。

slash filenames historical-unix

24
推荐指数
2
解决办法
1187
查看次数

为什么在正则表达式中选择插入符号 (^) 和美元符号 ($) 作为行的开头/结尾?

澄清一下,这不是关于插入符号 (^) 或美元符号 ($) 在正则表达式中的作用的问题。

在具有 QWERTY 布局的现代键盘中,^出现在后面$(即^出现在数字 6$上方和4 上方),所以当我使用它们时,我总是有一段时间的手眼不协调,比如^foobar$.

所以我很好奇,为什么从历史上看,为什么选择插入符号和美元符号来匹配行的开头/结尾,因为如果将它们颠倒过来会更直观。

也许他们当时有不同的键盘布局?显然,在 vi 中选择 ESC 来改变模式的原因是它对 Bill Joy 的键盘有意义:为什么 vim 使用 hjkl 键作为箭头键

regular-expression historical-unix

20
推荐指数
1
解决办法
963
查看次数

我在哪里可以得到原始的 Unix?

我在哪里可以获得原始的 Unix(从 1969 年开始)?我想看看原始Unix的源代码。

historical-unix

15
推荐指数
2
解决办法
2856
查看次数

Unix 是如何在 70 年代至 80 年代安装的?

嗯,我从 80 年代末开始接触计算机(实际上我就像 3 岁)。走了一里路:Atari Xl-XE、MS-DOS、Windows 3.1、95 等。然后因为外观而开始使用 Linux(是的,我知道,Compiz-Fusion是探索 Linux 的真正原因),现在安装在我所有的机器。我什至在 Windows 10 中有它。

我以前从头开始组装机器,你总是可以启动到“MS-DOS”,这就是我记得的,这让我感到奇怪。

Unix 是如何在 80 年代或 70 年代后期安装的(我什至还没有活着)?是否像启动大软盘或涉及黑魔法一样微不足道?

碰巧我找不到任何对它的引用,而我国家的人就是没有得到自由软件的东西。

编辑:

我跳过了一个关键部分,我觉得自己很愚蠢,因为我一开始没有考虑到这一点。

一切都从启动顺序开始,它不是操作系统,而是在 ROM 内存中,例如 BIOS(在我看来是用于机器配置的非常简约的操作系统)和其他东西,例如启动顺序。在这个阶段,它将查找 BIOS 中列出的设备,然后按顺序迭代它们,直到一个设备响应引导指令,就像磁带中的那些。所以不需要初始操作系统,可以安装 Unix。

愚蠢的错误,带你走很长的路,但你肯定会学到更多。

linux boot history historical-unix

11
推荐指数
1
解决办法
485
查看次数

为什么很多 Unix 系统默认的 umask 是 002 或 022?默认情况下似乎不安全

我已经使用 Linux 和 Unix 很长时间了。我第一次学习Unix是在一个有很多学生的电脑教室里,老师告诉我们可以用ssh它登录我就读的大学提供的远程工作站。

在这种情况下,我立即知道 Unix 是一个多用户操作系统,因为学生多于工作站。(鸽巢原理。)

不知何故,经过多年的使用,我基本上知道umask(默认为 002)是什么,并且用户(和新用户)的默认权限是755文件夹、644文件。

但是仔细想想,在这样的多用户操作系统中,默认权限设置似乎是不安全的。虽然它使共享数据更容易,但当您可以轻松地在他们的主目录中列出和复制其他用户的文件时,我仍然感到奇怪。

那么为什么在许多 Unix 系统中默认 umask 002 呢?传统Unix选择这种设计有什么历史原因吗?

(我能想到的一个可能的原因是,1970~1980年计算机主要用于科学研究,计算能力非常有限。所以当Unix早期版本出来时,他们决定默认权限应该是为了方便共享而不是隐私保护。)

security permissions umask privacy historical-unix

9
推荐指数
1
解决办法
7151
查看次数

为什么点 (.) 被用作源的别名 & 为什么其他命令也没有快捷方式?

编辑:实际上,它不是别名(见答案)

众所周知,在 shell 中,点命令 ( .) 是源命令的别名。

但我想知道这样一个奇怪的别名背后是否有原因?显然,我不经常使用它,所以我需要这么短的别名。

那么,为什么是一个点呢?为什么 forsource而不是更常用的命令,例如cdls?为什么甚至是别名?这背后有什么好的理由吗?还是有历史原因?

注意:我最初在 Server Fault 上发布了这个问题,但有人建议我将其发布在这里。

shell bash historical-unix

8
推荐指数
2
解决办法
2135
查看次数

为什么选择`.` 来表示点命令?

看到这个问题后,我想知道为什么.选择符号来表示点命令

我无法找到太多关于它的起源或谁创建它的信息,并且很好奇为什么选择句号来代表这个命令。

history command historical-unix

8
推荐指数
1
解决办法
401
查看次数