开发专为 USB 记忆棒设计的操作系统:一些问题

发布于 2024-08-02 02:31:50 字数 387 浏览 5 评论 0原文

在此之前,我在操作系统开发方面的唯一经验是创建一个从软盘驱动器运行的“Hello World”操作系统。

我现在需要的是开发一个简单的操作系统来从 USB 记忆棒启动。 我有一些障碍:

  1. 如何写入 USB 记忆棒的引导“扇区”? 有没有可用的工具?

  2. 您知道任何针对 USB 引导加载的优秀教程或指南吗?

  3. 我需要能够读取 USB 上的文件; U 盘上的标准文件系统是什么? 胖的? Linux 本身是否使用 FAT 来存储/读取 USB 上的文件?

注意:我这样做只是为了学习所有肮脏的低级技巧,这就是为什么我不希望 linux on a Stick 来完成这项工作。

My only experience in O/S development before this has been to create a 'Hello World' OS running from a Floppy drive.

What I need now is to develop a simple O/S to boot from a USB stick. And I have a few roadblocks:

  1. How do I write to the boot "sector" of a USB stick? Are there any tools available?

  2. Do you know of any good tutorials or guides directed towards USB bootloading?

  3. I need to be able to read files on the USB; what is the standard file system on a USB stick? FAT? Does Linux natively use FAT to store/read files on a USB?

NB: I am doing this just for learning all the dirty low level tricks, that's why I don't want linux on a stick to do this job.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

青春有你 2024-08-09 02:31:50
  1. 没有特殊的引导扇区,您只需将 MBR 写入闪存上的前 512 个字节驾驶。
  2. Pendriveinux.com 上有很多指南
  3. FAT 适用于大多数(如果不是全部)情况。 虽然 Linux可以在 FAT 上工作,但您可以在 USB 记忆棒上创建另一个分区,该分区将是 ext2(或任何其他非日志文件系统)并让 Linux 在其上工作。 >它解决方案知识库有一篇关于使用 ext2 分区进行持久 BackTrack 闪存驱动器安装的文章。
  1. There's no special boot sector, you just write the MBR to the very first 512 bytes on the flash drive.
  2. There are a lot of guides at Pendriveinux.com
  3. FAT works in most (if not all) cases. While Linux can work from FAT, you could just create another partition on the USB stick which will be ext2 (or any other non-journaling filesystem) and let Linux work on it. IT Solutions Knowledge Base has an article about making a persistent BackTrack flash drive installation using an ext2 partition.
佼人 2024-08-09 02:31:50

只是我脑海中的一些答案(因为我经常处理低级磁盘结构):

  1. 您可以使用一个好的十六进制编辑器,它可以让您直接写入磁盘(例如 HxD),或推出使用 CreateFile API(或 Linux 等效项)的您自己的应用程序。

  2. 您可以查看诸如 BartPE 之类的东西,它允许您在USB 设备。

  3. USB 驱动器的 FAT 格式为 99%。 Linux 确实原生支持 FAT 来读取 USB 大容量存储。

Just some answers off the top of my head (since I deal with low-level disk structure a lot):

  1. You can just use a good hex editor that will let you write directly to a disk (such as HxD), or roll your own app that uses the CreateFile API (or the Linux equivalent).

  2. You can check out something like BartPE, which allows you to make a bootable XP image on a USB device.

  3. USB drives are 99% FAT. Linux does indeed support FAT natively for reading USB mass storage.

无边思念无边月 2024-08-09 02:31:50

只是添加一个信息。 Mac on Stick 将是一个有用的东西。 你可以得到文件结构等核心思想,仔细看一下就可以解决上面的大部分问题。 :)

Just adding an information. Mac on Stick will be a useful thing. You can get the core idea on file structure etc. Having a careful look will solve most of the above problems. :)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文