我怎样才能创建这种类型的机器?

问题描述 投票:0回答:2

所以我有一台电脑。它已经有程序。如果我删除这些程序,我将留下一个能够运行命令的操作系统。从那时起我可以创建自己的程序,但是我将仅限于已经加载到机器上的操作系统的约束。我想要做的是完全从计算机中删除操作系统,只留下一个空白屏幕和一个光标,我可以输入我想要的任何内容。我希望能够创建自己的程序,而无需在其后面运行操作系统程序。我不明白物理机器如何能够处理我输入的字符串并产生自己的响应,然后显示在屏幕上,但显然有人之前已经完成了,否则我不会我正在打字的机器。

(我为判刑而道歉,但我不知道怎么说我想说的话。)

我的目标是拥有一台类似于Apple 2的计算机,我唯一可以用它做的就是键入文本行并看到屏幕上弹出的字符。我在这个目标之上的目标是开发一个隐藏在机器背景中的程序,这样屏幕上仍然只有一个光标,但是当我输入任何简单的问题时,程序会这样做。屏幕,例如,“你今天感觉如何?”,我会收到一个回答,“我做得很好,谢谢。你好吗?”。

有没有人知道我怎么能正确启动这个项目?

basic
2个回答
1
投票
  1. 如果您需要提出这个问题,您需要学习SO提供的不止一个答案。
  2. 甚至需要操作系统才能将光标放在屏幕上。
  3. 如果你认真对待这个想法 - 你可能想要从微控制器开始,比如Arduino。它们比Apple 2更强大,它们将允许您编写程序并直接启动它们。添加某种终端IO并不难 - 至少与在实际PC上引导程序相比。

0
投票

像这样的项目的一个很好的起点是了解一般的操作系统。这是一个很大的话题,但你不必知道一切。

当我们谈到操作系统时,我们考虑的是一个大型系统,它提供管理内存,读取和写入永久存储文件以及与输入和输出(如键盘和显示器)交互的功能。我们通常也在考虑大量更高级别的软件应用程序。将dir或ls等命令视为操作系统附带的程序。当然,对于基于GUI的操作系统,我们还有窗口和按钮以及各种控件需要考虑。

好消息是,为了开始你不需要成为一切的专家,你当然不必从一个完整的操作系统开始。

另一个好消息是该主题可以分解为字节大小的部分。 Charles Petzold的Code The Hidden Language of Hardware and Software是您需要的基本原则的精彩介绍

Petzold首先讨论摩尔斯电码和盲文的发明,增加电力,数字系统,布尔逻辑,以及由此产生的经验所需的顿悟。利用这些构建模块,他构建了电路,继电器,门,开关,讨论了真空管,晶体管以及最后集成电路的发明。

本书的最后一部分包含一系列主题,例如浮点数学的实现,操作系统以及二十世纪下半叶发生的各种改进。

一旦您对基础知识有所了解,学习操作系统的下一步就是研究尽可能少的功能。看看MINIX

MINIX最初由Andrew S. Tanenbaum于1987年开发,作为其教科书操作系统设计和实现的教学工具。今天,它是一个面向文本的操作系统,内核少于6,000行代码。 MINIX最大的声誉声称是微内核的一个例子,其中每个设备驱动程序作为一个独立的用户模式进程运行 - 这种结构不仅提高了安全性而且提高了可靠性,因为它意味着驱动程序中的错误无法降低整个系统。

玩得开心。

© www.soinside.com 2019 - 2024. All rights reserved.