FileSystem

2024-06-09

最后编辑于:2024-09-15

    #OS
    #FileSystem

FileSystem

进程控制块中会维护一个打开文件表

xv6中的ofile

struct proc {
	...
	struct file *ofile[NOFILE];  // Open files
	...
};

rCore ch6中的fd_table

pub struct TaskControlBlockInner {
	...
    pub fd_table: Vec<Option<Arc<dyn File + Send + Sync>>>,
}

File Descriptor

按照约定,前三个fd会分配给STDIN(0), STDOUT(1), STDERR(2)