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

📄 xsfsbase.h

📁 一个操作系统,用C语言实现开发的,我在一个浙江大学的操作系统实验网站找到.大家学习以下
💻 H
字号:
// XSFS Basic Definitions

#ifndef __XSFSBASE_H
#define __XSFSBASE_H

#include "vfsio.h"
#include "xsfs.h"

#ifdef _MSC_VER
#pragma pack(push, 1)
#endif

typedef struct _XSFS
{
	XSFSDESC desc;
	IOH handle;
	void *buffer;		// the size should not be smaller than one unit
} XSFS;
typedef XSFS* HXSFS;

typedef struct _XSSTREAM
{
	HXSFS xsfs;
	XSFSSTREAM stream;
	_u32 sector, offset;	// used for updating stream definition
} XSSTREAM;
typedef XSSTREAM* HXSSTREAM;

#ifdef _MSC_VER
#pragma pack(pop)
#endif

static inline _u32 i_xsfs_unit_size(HXSFS xsfs)
{ return xsfs->desc.n_scale*xsfs->desc.sector_size; }

static inline _u32 i_xsfs_start_sector(HXSFS xsfs)
{ return xsfs->desc.n_reserved+xsfs->desc.n_ss_desc; }

static inline _u32 i_xsfs_sector_to_unit(HXSFS xsfs, _u32 sector)
{ return sector<i_xsfs_start_sector(xsfs) ? 0 : ((sector-i_xsfs_start_sector(xsfs))/xsfs->desc.n_scale); }

#endif

⌨️ 快捷键说明

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