因此,几天前,我冒险进入了OS开发的未知领域。作为一种"Hello,World“程序,我用汇编语言创建了这个引导加载程序:
;*********************************************
; Boot1.asm
; - A Simple Bootloader
;
; Operating Systems Development Tutorial
;*********************************************
org 0x7c00 ; We are loaded by BIO
我想尝试一下Linux,并做一些测试。我曾尝试在Virtual PC (2004)来宾计算机上安装Linux,但无法正常工作。
我想,由于所有人都在鼓吹Linux,也许有人做了一个猜测文件,我可以直接下载并在Virtual PC (理想情况下)或VmWare中打开。
另外,大约两年前,我在ExpertsExchange上问了一个问题,人们告诉我应该使用VMware (但没有建议在哪里可以找到预制的访客记录)。
我已经成功地为android编译了Linux内核:
root@ubuntu:~/common# ARCH=arm CROSS_COMPILE=~/mydroid/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/arm-eabi- make
CHK include/linux/version.h
make[1]: `include/asm-arm/mach-types.h' is up to date.
CHK include/linux/utsrelease.h
.
.
.
SYMLINK include/as
我试图编辑一个Fedora 19 DVD ISO,以添加一个启动文件。然后,我需要这个ISO烧焦到一个USB棒,以注入。
引导时所遇到的错误是
Warning: Could not boot.
Warning: /dev/root does not exist
为了试图确定流程的哪一部分失败了,我已经将流程分解为不同的阶段。
步骤1:
烧掉原来的ISO "Fedora-19-x86_64-DVD.iso“(可用的-> 这里),看看是否会安装。
dd if=/path/to/iso of=/dev/sdc
烧录此映像是成功的,它的安装没有问题。
步骤2:
超出ISO,重新包装,烧掉
我在(hd0,gpt7)/ iso /ubuntu-20.10-桌面-amd64.iso上找到iso文件
在GRUB命令行中,我输入如下所示。
set root=(hd0,gpt7)
set iso=/iso/ubuntu-20.10-desktop-amd64.iso
loopback l $iso
linux (l)/casper/vmlinuz root=casper iso-scan/filename=$iso
initrd (l)/casper/initrd
boot
Ubuntu启动了。但是无法安装错误的Ubuntu。检查系统花了这么多时间。
为了在Vagrant中添加一个盒子,我们在一个vagrantfile中添加了以下代码:
Vagrant.configure("2") do |config|
config.vm.box = "hashicorp/bionic64"
end
我们还可以添加ISO镜像而不是盒子吗?如果是,那是什么方法呢?为什么我们需要在Vagrant中构建一个盒子--为什么我们不能使用ISO镜像?