⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 exec.c

📁 这是一个同样来自贝尔实验室的和UNIX有着渊源的操作系统, 其简洁的设计和实现易于我们学习和理解
💻 C
字号:
#include	"u.h"#include	"mem.h"#include	"dat.h"#include	"fns.h"#include	"lib.h"uchar	pcbpage[64*1024+sizeof(PCB)];PCB		*pcb;void	(*kentry)(Bootconf*);voidgokernel(void){	(*kentry)(&conf);}voidkexec(ulong entry){	uvlong pcbb, paltype;	pcb = (PCB*)(((ulong)pcbpage+0xffff) & ~0xffff);	/* page align, even on 64K page Alphas */	memset(pcb, 0, sizeof(PCB));	pcb->ksp = (uvlong)&entry;	pcb->ptbr = getptbr();	pcb->fen = 1;	conf.pcb = pcb;	pcbb = paddr((uvlong)pcb);	kentry = (void(*)(Bootconf*))entry;	paltype = 2;	/* OSF/1 please */	switch (swppal(paltype, (uvlong)gokernel, pcbb, hwrpb->vptb, pcb->ksp)) {	case 1:		panic("unknown PALcode variant");	case 2:		panic("PALcode variant not loaded");	default:		panic("weird return status from swppal");	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -