xv6-simplified 0.1
简化版xv6
|
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
#include <fcntl.h>
#include <assert.h>
#include "src/kernel/types.h"
#include "src/kernel/fs.h"
#include "src/kernel/stat.h"
#include "src/kernel/param.h"
Macros | |
#define | stat xv6_stat |
#define | static_assert(a, b) do { switch (0) case 0: case (a): ; } while (0) |
#define | NINODES 200 |
#define | min(a, b) ((a) < (b) ? (a) : (b)) |
Functions | |
void | balloc (int) |
void | wsect (uint, void *) |
void | winode (uint, struct dinode *) |
void | rinode (uint inum, struct dinode *ip) |
void | rsect (uint sec, void *buf) |
uint | ialloc (ushort type) |
void | iappend (uint inum, void *p, int n) |
void | die (const char *) |
ushort | xshort (ushort x) |
uint | xint (uint x) |
int | main (int argc, char *argv[]) |
Variables | |
int | nbitmap = FSSIZE/(BSIZE*8) + 1 |
int | ninodeblocks = NINODES / IPB + 1 |
int | nlog = LOGSIZE |
int | nmeta |
int | nblocks |
int | fsfd |
struct superblock | sb |
char | zeroes [BSIZE] |
uint | freeinode = 1 |
uint | freeblock |
#define min | ( | a, | |
b | |||
) | ((a) < (b) ? (a) : (b)) |
#define NINODES 200 |
#define stat xv6_stat |
#define static_assert | ( | a, | |
b | |||
) | do { switch (0) case 0: case (a): ; } while (0) |
void balloc | ( | int | used | ) |
void die | ( | const char * | s | ) |
void iappend | ( | uint | inum, |
void * | p, | ||
int | n | ||
) |
int main | ( | int | argc, |
char * | argv[] | ||
) |
void rinode | ( | uint | inum, |
struct dinode * | ip | ||
) |
void rsect | ( | uint | sec, |
void * | buf | ||
) |
void winode | ( | uint | inum, |
struct dinode * | ip | ||
) |
void wsect | ( | uint | sec, |
void * | buf | ||
) |
uint freeblock |
uint freeinode = 1 |
int fsfd |
int nblocks |
int ninodeblocks = NINODES / IPB + 1 |
int nlog = LOGSIZE |
int nmeta |
struct superblock sb |
char zeroes[BSIZE] |