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

📄 filesys.h

📁 Linux下简单文件系统的操作 具体可以实现目录得建立删除等等功能
💻 H
字号:
#ifndef FILESYS_H#define FILESYS_H#define DEVNAME "/dev/fd0H1440"#define DIR_ENTRY_SIZE 32 #define SECTOR_SIZE    512#define FAT_ONE_OFFSET 0x200 #define FAT_TWO_OFFSET 0x1400 #define ROOTDIR_OFFSET 0x2600 #define DATA_OFFSET    0x4200 /* mask for the entry attribute */ #define ATTR_READONLY 0x01 #define ATTR_HIDDEN   0x02#define ATTR_SYSTEM   0x04#define ATTR_VLABEL   0x08#define ATTR_SUBDIR   0x10#define ATTR_ARCHIVE  0x20/* mask for time 5:6:5*/#define MASK_HOUR     0xf800#define MASK_MIN      0x07e0#define MASK_SEC      0x001f/* mask for date 7:4:5*/#define MASK_YEAR     0xfe00#define MASK_MONTH    0x01e0#define MASK_DAY      0x001fstruct BootDescriptor_t { unsigned char Oem_name[9];     int BytesPerSector;           int SectorsPerCluster;       int ReservedSectors;         int FATs;                      int RootDirEntries;           int LogicSectors;       int MediaType;              int SectorsPerFAT;          int SectorsPerTrack;          int Heads;                     int HiddenSectors;            };struct Entry { unsigned char short_name[12]; unsigned char long_name[27];  unsigned short hour,min,sec;  unsigned short year,month,day; unsigned short FirstCluster;   unsigned int size;          unsigned char readonly:1;    unsigned char hidden:1;       unsigned char system:1;    unsigned char vlabel:1;    unsigned char subdir:1;     unsigned char archive:1;    };int fd_load();int fd_ls();int fd_cd(char *dir);int fd_rm(char *file_name);void findDate(unsigned short *year,unsigned short *month,unsigned short *day,unsigned char info[2]);void findTime(unsigned short *hour,unsigned short *min,unsigned short *sec,unsigned char info[2]);int  ReadFat();int  WriteFat();void ScanBootSector();void ScanRootEntry();int  ScanEntry(char *entryname,struct Entry *pentry,int mode); int  GetEntry(struct Entry *entry);void FileNameFormat(unsigned char *name);unsigned short GetFatCluster(unsigned short prev);void ClearFatCluster(unsigned short cluster);#endif 

⌨️ 快捷键说明

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