5
我想更深入地了解操作系统。所以,linux启动必须处理一个汇编文件。我知道mov, push, pop,
但在这里,我十分同意这种丢失:了解操作系统启动加载 - 程序集
.globl __start
.ent __start
__start:
br $29,2f
2: ldgp $29,0($29)
jsr $26,start_kernel
call_pal PAL_halt
.end __start
switch_to_osf_pal:
subq $30,128,$30
...
我是正确,如果我说__start
是标签吗?所以一旦它在另一个和平的代码中被调用,它会被调用吗?我试图谷歌了解ldgp
或call_pal
符号,但我什么也没找到。最后,我在c文件中发现switch_to_osf_pal
这样叫switch_to_osf_pal(2, pcb_va, pcb_pa, VPTB);
这个函数是用这个params调用汇编函数的吗?
很抱歉,如果有一个得多的问题,但我没有找到任何明确的文档
这是Alpha架构的代码?如果你想探索linux引导加载程序,你可能会更容易地找到信息,如果你探索一个更常见的架构 – msam
@msam我认为它确实是一个Alpha架构。我应该探索什么样的建筑? – Newben
x86和胳膊浮现在脑海中... – msam