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

📄 fns.h

📁 著名操作系统Plan 9的第三版的部分核心源代码。现在很难找到了。Plan 9是bell实验室开发的Unix后继者。
💻 H
字号:
#include "../port/portfns.h"void	aamloop(int);void	addconf(char*, char*);//void	addscsilink(char*, Scsiio (*)(int, ISAConf*));void	archinit(void);void	bootargs(ulong);int	cistrcmp(char*, char*);int	cistrncmp(char*, char*, int);#define	clearmmucache()				/* x86 doesn't have one */void	clockintr(Ureg*, void*);void	(*coherence)(void);void	cpuid(char*, int*, int*);int	cpuidentify(void);void	cpuidprint(void);void	delay(int);int	dmacount(int);int	dmadone(int);void	dmaend(int);int	dmainit(int, int);long	dmasetup(int, void*, long, int);#define	evenaddr(x)				/* x86 doesn't care */void	fpenv(FPsave*);void	fpinit(void);void	fpoff(void);void	fprestore(FPsave*);void	fpsave(FPsave*);ulong	fpstatus(void);ulong	getcr0(void);ulong	getcr2(void);ulong	getcr3(void);ulong	getcr4(void);char*	getconf(char*);int	i8042auxcmd(int);void	i8042auxenable(void (*)(int, int));void	i8042reset(void);void	i8253init(int, int);void	i8253enable(void);uvlong	i8253read(uvlong*);void	i8259init(void);int	i8259enable(Vctl*);void	idle(void);#define	idlehands()			/* nothing to do in the runproc */int	inb(int);void	insb(int, void*, int);ushort	ins(int);void	inss(int, void*, int);ulong	inl(int);void	insl(int, void*, int);void	intrenable(int, void (*)(Ureg*, void*), void*, int, char*);void	iofree(int);void	ioinit(void);int	iounused(int, int);int	ioalloc(int, int, int, char*);int	iprint(char*, ...);int	irqallocread(char*, long, vlong);int	isaconfig(char*, int, ISAConf*);void	kbdinit(void);void	lgdt(ushort[3]);void	lidt(ushort[3]);void	links(void);void	ltr(ulong);void	mathinit(void);void	meminit(ulong);#define mmuflushtlb(pdb) putcr3(pdb)void	mmuinit(void);ulong	mmukmap(ulong, ulong, int);int	mmukmapsync(ulong);#define	mmunewpage(x)ulong*	mmuwalk(ulong*, ulong, int, int);void	ns16552install(void);void	ns16552special(int, int, Queue**, Queue**, int (*)(Queue*, int));uchar	nvramread(int);void	nvramwrite(int, uchar);void	outb(int, int);void	outsb(int, void*, int);void	outs(int, ushort);void	outss(int, void*, int);void	outl(int, ulong);void	outsl(int, void*, int);int	pcicfgr8(Pcidev*, int);int	pcicfgr16(Pcidev*, int);int	pcicfgr32(Pcidev*, int);void	pcicfgw8(Pcidev*, int, int);void	pcicfgw16(Pcidev*, int, int);void	pcicfgw32(Pcidev*, int, int);void	pcihinv(Pcidev*);Pcidev* pcimatch(Pcidev*, int, int);Pcidev* pcimatchtbdf(int);void	pcireset(void);void	pcisetbme(Pcidev*);int	pcmcistuple(int, int, void*, int);PCMmap*	pcmmap(int, ulong, int, int);int	pcmspecial(char*, ISAConf*);void	pcmspecialclose(int);void	pcmunmap(int, PCMmap*);void	printcpufreq(void);#define	procrestore(p)void	procsave(Proc*);void	procsetup(Proc*);void	putcr3(ulong);void	putcr4(ulong);void	rdmsr(int, vlong*);void	screeninit(void);int	screenprint(char*, ...);			/* debugging */void	(*screenputs)(char*, int);void	touser(void*);void	trapenable(int, void (*)(Ureg*, void*), void*, char*);void	trapinit(void);int	tas(void*);ulong	umbmalloc(ulong, int, int);void	umbfree(ulong, int);ulong	umbrwmalloc(ulong, int, int);void	umbrwfree(ulong, int);ulong	upamalloc(ulong, int, int);void	upafree(ulong, int);void	vectortable(void);void	wrmsr(int, vlong);void	wbflush(void);int	xchgw(ushort*, int);ulong	TK2MS(ulong);				/* ticks to milliseconds */#define	waserror()	(up->nerrlab++, setlabel(&up->errlab[up->nerrlab-1]))#define KADDR(a)	((void*)((ulong)(a)|KZERO))#define PADDR(a)	((ulong)(a)&~KZERO)#define	dcflush(a, b)

⌨️ 快捷键说明

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