Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Architecture 用于嵌入式开发培训的x86仿真器_Architecture_Assembly_Embedded_X86 - Fatal编程技术网

Architecture 用于嵌入式开发培训的x86仿真器

Architecture 用于嵌入式开发培训的x86仿真器,architecture,assembly,embedded,x86,Architecture,Assembly,Embedded,X86,我希望更多地了解计算机的内部工作,以增强我对嵌入式系统开发的认识 在工作中,我从不涉及底层细节(比如GDT、从flash到RAM的代码加载程序等),因为所有这些都已经编写好了 我现在不想买任何其他硬件。 是否有一个模拟器,一个非常简单的操作系统,我可以玩,以便掌握所有这些嵌入式编程的低层次方面?有没有教程可以指导我如何设置一个非常简单的嵌入式环境(设置内存段、GDT、进入保护模式并执行main())x86仿真器的常见问题是和 您可能还想看看它及其链接到的资源。对于我们的操作系统课程,我们目前正在

我希望更多地了解计算机的内部工作,以增强我对嵌入式系统开发的认识

在工作中,我从不涉及底层细节(比如GDT、从flash到RAM的代码加载程序等),因为所有这些都已经编写好了

我现在不想买任何其他硬件。
是否有一个模拟器,一个非常简单的操作系统,我可以玩,以便掌握所有这些嵌入式编程的低层次方面?有没有教程可以指导我如何设置一个非常简单的嵌入式环境(设置内存段、GDT、进入保护模式并执行
main()

x86仿真器的常见问题是和


您可能还想看看它及其链接到的资源。

对于我们的操作系统课程,我们目前正在使用一个名为“土豆”的玩具操作系统。这是非常基本的,并且是基于James Molloy的内核教程的。你可以看看

此外,我可以在OSdev.org上推荐和

快乐黑客!:)


编辑:有关x86体系结构的一些好信息可以在Intel的第3卷中找到。第1卷介绍了基本体系结构,在第2卷中,您可以找到x86汇编指令集的完整参考。

嵌入式系统开发模拟器中有一个非常具体的含义;你说的是“模拟器”吗?但是,如果您是在x86上开发的,那么当您可以使用VM时,指令集模拟器是不必要的,并且受到限制的

事实上,如果您想要“一个非常简单的嵌入式环境”,您就不会选择x86。引导和配置这些复杂的设备(及其相关的芯片组和内存)绝非易事


如果您的平台是x86,那么最简单的方法就是使用在真正的x86上运行的虚拟机。最灵活、最健壮的VM是免费提供的,另一个是免费提供的。然而,微软的虚拟PC是为运行Windows而优化的,让Linux在其上运行可能会很麻烦,更不用说一些小型RTO了。

使用真正的嵌入式机器可能会更好。Arduino的开发环境非常昂贵,在那里,您可以直接在金属上工作:


AVR是进入这一领域的合理起点,x86则不然。

我说的确实是一个完整的虚拟机,比如virtualbox/Qemu/Bochs/VMware等。我只是觉得有一些东西更适合嵌入式系统。当然,x86是复杂的,这就是为什么我想学习它所有有趣的功能(分段、分页保护模式,哦,我的…)如果你有预算,也许真正的硬件可能更合适-例如,工业PC卡,低端PC/104形状因子板不需要昂贵。