📄 mkfs.c
字号:
#include <u.h>#include <libc.h>#include <auth.h>#include <fcall.h>#include <thread.h>#include <9p.h>#include "flashfs.h"static voidusage(void){ fprint(2, "usage: %s [-n nsect] [-z sectsize] file\n", argv0); exits("usage");}static ulongargval(char *arg){ long v; char *extra; if(arg == nil) usage(); v = strtol(arg, &extra, 0); if(*extra || v <= 0) usage(); return v;}voidmain(int argc, char **argv){ ulong i; int m, n; char *file; uchar hdr[MAXHDR]; ARGBEGIN { case 'n': nsects = argval(ARGF()); break; case 'z': sectsize = argval(ARGF()); break; default: usage(); } ARGEND if(argc != 1) usage(); file = argv[0]; sectbuff = emalloc9p(sectsize); initdata(file, 1); memmove(hdr, magic, MAGSIZE); m = putc3(&hdr[MAGSIZE], 0); n = putc3(&hdr[MAGSIZE + m], 0); clearsect(0); writedata(0, 0, hdr, MAGSIZE + m + n, 0); for(i = 1; i < nsects - 1; i++) clearsect(i); m = putc3(&hdr[MAGSIZE], 1); n = putc3(&hdr[MAGSIZE + m], 0); clearsect(nsects - 1); writedata(0, nsects - 1, hdr, MAGSIZE + m + n, 0);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -