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

📄 syms

📁 这是一个同样来自贝尔实验室的和UNIX有着渊源的操作系统, 其简洁的设计和实现易于我们学习和理解
💻
📖 第 1 页 / 共 2 页
字号:
sizeof_1_ = 8;aggr _1_{	'D' 0 hlength;	'D' 4 llength;};defn_1_(addr) {	complex _1_ addr;	print("	hlength	", addr.hlength, "\n");	print("	llength	", addr.llength, "\n");};sizeof_2_ = 8;aggr _2_{	'V' 0 length;	{	'D' 0 hlength;	'D' 4 llength;	};};defn_2_(addr) {	complex _2_ addr;	print("	length	", addr.length, "\n");	print("_1_ {\n");		_1_(addr+0);	print("}\n");};UTFmax = 3;Runesync = 128;Runeself = 128;Runeerror = 128;sizeofFconv = 24;aggr Fconv{	'X' 0 out;	'X' 4 eout;	'D' 8 f1;	'D' 12 f2;	'D' 16 f3;	'D' 20 chr;};defnFconv(addr) {	complex Fconv addr;	print("	out	", addr.out\X, "\n");	print("	eout	", addr.eout\X, "\n");	print("	f1	", addr.f1, "\n");	print("	f2	", addr.f2, "\n");	print("	f3	", addr.f3, "\n");	print("	chr	", addr.chr, "\n");};sizeofTm = 40;aggr Tm{	'D' 0 sec;	'D' 4 min;	'D' 8 hour;	'D' 12 mday;	'D' 16 mon;	'D' 20 year;	'D' 24 wday;	'D' 28 yday;	'a' 32 zone;	'D' 36 tzoff;};defnTm(addr) {	complex Tm addr;	print("	sec	", addr.sec, "\n");	print("	min	", addr.min, "\n");	print("	hour	", addr.hour, "\n");	print("	mday	", addr.mday, "\n");	print("	mon	", addr.mon, "\n");	print("	year	", addr.year, "\n");	print("	wday	", addr.wday, "\n");	print("	yday	", addr.yday, "\n");	print("	zone	", addr.zone, "\n");	print("	tzoff	", addr.tzoff, "\n");};PNPROC = 1;PNGROUP = 2;sizeofLock = 4;aggr Lock{	'D' 0 val;};defnLock(addr) {	complex Lock addr;	print("	val	", addr.val, "\n");};sizeofQLp = 12;aggr QLp{	'D' 0 inuse;	'A' QLp 4 next;	'C' 8 state;};defnQLp(addr) {	complex QLp addr;	print("	inuse	", addr.inuse, "\n");	print("	next	", addr.next\X, "\n");	print("	state	", addr.state, "\n");};sizeofQLock = 16;aggr QLock{	Lock 0 lock;	'D' 4 locked;	'A' QLp 8 $head;	'A' QLp 12 $tail;};defnQLock(addr) {	complex QLock addr;	print("Lock lock {\n");	Lock(addr.lock);	print("}\n");	print("	locked	", addr.locked, "\n");	print("	$head	", addr.$head\X, "\n");	print("	$tail	", addr.$tail\X, "\n");};sizeofRWLock = 20;aggr RWLock{	Lock 0 lock;	'D' 4 readers;	'D' 8 writer;	'A' QLp 12 $head;	'A' QLp 16 $tail;};defnRWLock(addr) {	complex RWLock addr;	print("Lock lock {\n");	Lock(addr.lock);	print("}\n");	print("	readers	", addr.readers, "\n");	print("	writer	", addr.writer, "\n");	print("	$head	", addr.$head\X, "\n");	print("	$tail	", addr.$tail\X, "\n");};RFNAMEG = 1;RFENVG = 2;RFFDG = 4;RFNOTEG = 8;RFPROC = 16;RFMEM = 32;RFNOWAIT = 64;RFCNAMEG = 1024;RFCENVG = 2048;RFCFDG = 4096;RFREND = 8192;sizeofQid = 8;aggr Qid{	'U' 0 path;	'U' 4 vers;};defnQid(addr) {	complex Qid addr;	print("	path	", addr.path, "\n");	print("	vers	", addr.vers, "\n");};sizeofDir = 116;aggr Dir{	'a' 0 name;	'a' 28 uid;	'a' 56 gid;	Qid 84 qid;	'U' 92 mode;	'D' 96 atime;	'D' 100 mtime;	{	'V' 104 length;	{	'D' 104 hlength;	'D' 108 llength;	};	};	'u' 112 type;	'u' 114 dev;};defnDir(addr) {	complex Dir addr;	print("	name	", addr.name, "\n");	print("	uid	", addr.uid, "\n");	print("	gid	", addr.gid, "\n");	print("Qid qid {\n");	Qid(addr.qid);	print("}\n");	print("	mode	", addr.mode, "\n");	print("	atime	", addr.atime, "\n");	print("	mtime	", addr.mtime, "\n");	print("_2_ {\n");		_2_(addr+104);	print("}\n");	print("	type	", addr.type, "\n");	print("	dev	", addr.dev, "\n");};sizeofWaitmsg = 112;aggr Waitmsg{	'a' 0 pid;	'a' 12 time;	'a' 48 msg;};defnWaitmsg(addr) {	complex Waitmsg addr;	print("	pid	", addr.pid, "\n");	print("	time	", addr.time, "\n");	print("	msg	", addr.msg, "\n");};DBlack = 255;DBlue = 201;DRed = 15;DYellow = 3;DGreen = 192;DWhite = 0;Displaybufsize = 8000;ICOSSCALE = 1024;Borderwidth = 4;Refbackup = 0;Refnone = 1;Refmesg = 2;Endsquare = 0;Enddisc = 1;Endarrow = 2;Endmask = 31;sizeofPoint = 8;aggr Point{	'D' 0 x;	'D' 4 y;};defnPoint(addr) {	complex Point addr;	print("	x	", addr.x, "\n");	print("	y	", addr.y, "\n");};sizeofRectangle = 16;aggr Rectangle{	Point 0 min;	Point 8 max;};defnRectangle(addr) {	complex Rectangle addr;	print("Point min {\n");	Point(addr.min);	print("}\n");	print("Point max {\n");	Point(addr.max);	print("}\n");};sizeofScreen = 16;aggr Screen{	'X' 0 display;	'D' 4 id;	'X' 8 image;	'X' 12 fill;};defnScreen(addr) {	complex Screen addr;	print("	display	", addr.display\X, "\n");	print("	id	", addr.id, "\n");	print("	image	", addr.image\X, "\n");	print("	fill	", addr.fill\X, "\n");};sizeofDisplay = 8156;aggr Display{	QLock 0 qlock;	'D' 16 dirno;	'D' 20 fd;	'D' 24 reffd;	'D' 28 ctlfd;	'D' 32 imageid;	'D' 36 $local;	'D' 40 ldepth;	'X' 44 error;	'X' 48 devdir;	'X' 52 windir;	'a' 56 oldlabel;	'U' 120 dataqid;	'X' 124 ones;	'X' 128 zeros;	'X' 132 image;	'a' 136 buf;	'X' 8140 bufp;	'X' 8144 defaultfont;	'X' 8148 defaultsubfont;	'X' 8152 windows;};defnDisplay(addr) {	complex Display addr;	print("QLock qlock {\n");	QLock(addr.qlock);	print("}\n");	print("	dirno	", addr.dirno, "\n");	print("	fd	", addr.fd, "\n");	print("	reffd	", addr.reffd, "\n");	print("	ctlfd	", addr.ctlfd, "\n");	print("	imageid	", addr.imageid, "\n");	print("	$local	", addr.$local, "\n");	print("	ldepth	", addr.ldepth, "\n");	print("	error	", addr.error\X, "\n");	print("	devdir	", addr.devdir\X, "\n");	print("	windir	", addr.windir\X, "\n");	print("	oldlabel	", addr.oldlabel, "\n");	print("	dataqid	", addr.dataqid, "\n");	print("	ones	", addr.ones\X, "\n");	print("	zeros	", addr.zeros\X, "\n");	print("	image	", addr.image\X, "\n");	print("	buf	", addr.buf, "\n");	print("	bufp	", addr.bufp\X, "\n");	print("	defaultfont	", addr.defaultfont\X, "\n");	print("	defaultsubfont	", addr.defaultsubfont\X, "\n");	print("	windows	", addr.windows\X, "\n");};sizeofImage = 56;aggr Image{	'A' Display 0 display;	'D' 4 id;	Rectangle 8 r;	Rectangle 24 clipr;	'D' 40 ldepth;	'D' 44 repl;	'A' Screen 48 screen;	'A' Image 52 next;};defnImage(addr) {	complex Image addr;	print("	display	", addr.display\X, "\n");	print("	id	", addr.id, "\n");	print("Rectangle r {\n");	Rectangle(addr.r);	print("}\n");	print("Rectangle clipr {\n");	Rectangle(addr.clipr);	print("}\n");	print("	ldepth	", addr.ldepth, "\n");	print("	repl	", addr.repl, "\n");	print("	screen	", addr.screen\X, "\n");	print("	next	", addr.next\X, "\n");};sizeofRGB = 12;aggr RGB{	'U' 0 red;	'U' 4 green;	'U' 8 blue;};defnRGB(addr) {	complex RGB addr;	print("	red	", addr.red, "\n");	print("	green	", addr.green, "\n");	print("	blue	", addr.blue, "\n");};sizeofFontchar = 8;aggr Fontchar{	'D' 0 x;	'b' 4 top;	'b' 5 bottom;	'C' 6 left;	'b' 7 width;};defnFontchar(addr) {	complex Fontchar addr;	print("	x	", addr.x, "\n");	print("	top	", addr.top, "\n");	print("	bottom	", addr.bottom, "\n");	print("	left	", addr.left, "\n");	print("	width	", addr.width, "\n");};sizeofSubfont = 16;aggr Subfont{	'X' 0 name;	'd' 4 n;	'b' 6 height;	'C' 7 ascent;	'A' Fontchar 8 info;	'A' Image 12 bits;};defnSubfont(addr) {	complex Subfont addr;	print("	name	", addr.name\X, "\n");	print("	n	", addr.n, "\n");	print("	height	", addr.height, "\n");	print("	ascent	", addr.ascent, "\n");	print("	info	", addr.info\X, "\n");	print("	bits	", addr.bits\X, "\n");};LOG2NFCACHE = 6;NFCACHE = 64;NFLOOK = 5;NFSUBF = 2;MAXFCACHE = 1029;MAXSUBF = 50;DSUBF = 4;SUBFAGE = 10000;CACHEAGE = 10000;sizeofCachefont = 16;aggr Cachefont{	'u' 0 min;	'u' 2 max;	'D' 4 offset;	'X' 8 name;	'X' 12 subfontname;};defnCachefont(addr) {	complex Cachefont addr;	print("	min	", addr.min, "\n");	print("	max	", addr.max, "\n");	print("	offset	", addr.offset, "\n");	print("	name	", addr.name\X, "\n");	print("	subfontname	", addr.subfontname\X, "\n");};sizeofCacheinfo = 8;aggr Cacheinfo{	'u' 0 x;	'b' 2 width;	'C' 3 left;	'u' 4 value;	'u' 6 age;};defnCacheinfo(addr) {	complex Cacheinfo addr;	print("	x	", addr.x, "\n");	print("	width	", addr.width, "\n");	print("	left	", addr.left, "\n");	print("	value	", addr.value, "\n");	print("	age	", addr.age, "\n");};sizeofCachesubf = 12;aggr Cachesubf{	'U' 0 age;	'A' Cachefont 4 cf;	'A' Subfont 8 f;};defnCachesubf(addr) {	complex Cachesubf addr;	print("	age	", addr.age, "\n");	print("	cf	", addr.cf\X, "\n");	print("	f	", addr.f\X, "\n");};sizeofFont = 52;aggr Font{	'X' 0 name;	'A' Display 4 display;	'd' 8 height;	'd' 10 ascent;	'D' 12 maxldepth;	'd' 16 width;	'd' 18 ldepth;	'd' 20 nsub;	'U' 24 age;	'D' 28 ncache;

⌨️ 快捷键说明

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