mac.h
上传用户:jlfgdled
上传日期:2013-04-10
资源大小:33168k
文件大小:1k
源码类别:

Linux/Unix编程

开发平台:

Unix_Linux

  1. /*
  2.  *  fs/partitions/mac.h
  3.  */
  4. #define MAC_PARTITION_MAGIC 0x504d
  5. /* type field value for A/UX or other Unix partitions */
  6. #define APPLE_AUX_TYPE "Apple_UNIX_SVR2"
  7. struct mac_partition {
  8. __u16 signature; /* expected to be MAC_PARTITION_MAGIC */
  9. __u16 res1;
  10. __u32 map_count; /* # blocks in partition map */
  11. __u32 start_block; /* absolute starting block # of partition */
  12. __u32 block_count; /* number of blocks in partition */
  13. char name[32]; /* partition name */
  14. char type[32]; /* string type description */
  15. __u32 data_start; /* rel block # of first data block */
  16. __u32 data_count; /* number of data blocks */
  17. __u32 status; /* partition status bits */
  18. __u32 boot_start;
  19. __u32 boot_size;
  20. __u32 boot_load;
  21. __u32 boot_load2;
  22. __u32 boot_entry;
  23. __u32 boot_entry2;
  24. __u32 boot_cksum;
  25. char processor[16]; /* identifies ISA of boot */
  26. /* there is more stuff after this that we don't need */
  27. };
  28. static inline void macpart_fix_string(char *stg, int len)
  29. {
  30. int i;
  31. for (i = len - 1; i >= 0 && stg[i] == ' '; i--)
  32. stg[i] = 0;
  33. }
  34. #define MAC_STATUS_BOOTABLE 8 /* partition is bootable */
  35. #define MAC_DRIVER_MAGIC 0x4552
  36. /* Driver descriptor structure, in block 0 */
  37. struct mac_driver_desc {
  38. __u16 signature; /* expected to be MAC_DRIVER_MAGIC */
  39. __u16 block_size;
  40. __u32 block_count;
  41.     /* ... more stuff */
  42. };
  43. int mac_partition(struct gendisk *hd, struct block_device *bdev, unsigned long fsec, int first_part_minor);