parted 源码 分析 分区

1350阅读 0评论2013-10-24 qianzhongjie
分类:LINUX


#重量级的
H:\portage\sys-block\parted\parted-2.3.chm

main
interactive_mode (PedDevice** dev, Command* cmd_list[])
    command_get (commands, word);
    command_run (cmd, dev))
        cmd->method (dev);
    command_line_flush ();

#注册的命令
command_register (command_create (...))
"align-check"    "check"     "cp"     "help"     "mklabel" "mkfs"     "mkpart" "mkpartfs" "move"     "name"     
"print"     "quit"     "rescue" "resize" "rm"     "select" "set"     "toggle" "unit"     "version"

#下面就是对应的  cmd->method
do_align_check
do_check
do_cp
do_help
do_mkfs
    ped_file_system_create (PedGeometry* geom, const PedFileSystemType* type,
        PedFileSystemOps #注册的文件系统.
do_mklabel
do_mkpart
do_mkpartfs
do_move
do_name
do_print
do_quit
do_rescue
do_resize
do_rm
do_select
do_set
do_toggle
do_unit
do_version


#==========================================================================
#文件系统的注册
PedFileSystemOps
    include/parted/filesys.h typedef const struct _PedFileSystemOps    ;
    include/parted/filesys.h     * const    ops;
    libparted/fs/amiga/affs.c                   _affs0_ops = {
    libparted/fs/amiga/affs.c                   _affs1_ops = {
    libparted/fs/amiga/affs.c                   _affs2_ops = {
    libparted/fs/amiga/affs.c                   _affs3_ops = {
    libparted/fs/amiga/affs.c                   _affs4_ops = {
    libparted/fs/amiga/affs.c                   _affs5_ops = {
    libparted/fs/amiga/affs.c                   _affs6_ops = {
    libparted/fs/amiga/affs.c                   _affs7_ops = {
    libparted/fs/amiga/affs.c                   _amufs_ops = {
    libparted/fs/amiga/affs.c                   _amufs0_ops = {
    libparted/fs/amiga/affs.c                   _amufs1_ops = {
    libparted/fs/amiga/affs.c                   _amufs2_ops = {
    libparted/fs/amiga/affs.c                   _amufs3_ops = {
    libparted/fs/amiga/affs.c                   _amufs4_ops = {
    libparted/fs/amiga/affs.c                   _amufs5_ops = {
    libparted/fs/amiga/apfs.c                   _apfs1_ops = {
    libparted/fs/amiga/apfs.c                   _apfs2_ops = {
    libparted/fs/amiga/asfs.c                   _asfs_ops = {
    libparted/fs/ext2/interface.c                   _ext2_ops = {
    libparted/fs/ext2/interface.c                   _ext3_ops = {
    libparted/fs/ext2/interface.c                   _ext4_ops = {
    libparted/fs/fat/fat.c                   fat16_ops = {
    libparted/fs/fat/fat.c                   fat32_ops = {
    libparted/fs/hfs/hfs.c                   hfs_ops = {
    libparted/fs/hfs/hfs.c                   hfsplus_ops = {
    libparted/fs/hfs/hfs.c                   hfsx_ops = {
    libparted/fs/jfs/jfs.c                   jfs_ops = {
    libparted/fs/linux_swap/linux_swap.c                   _swap_v0_ops = {
    libparted/fs/linux_swap/linux_swap.c                   _swap_v1_ops = {
    libparted/fs/linux_swap/linux_swap.c                   _swap_swsusp_ops = {
    libparted/fs/ntfs/ntfs.c                   ntfs_ops = {
    libparted/fs/reiserfs/reiserfs.c                   reiserfs_full_ops = {
    libparted/fs/reiserfs/reiserfs.c                   reiserfs_simple_ops = {
    libparted/fs/ufs/ufs.c                   ufs_ops_sun = {
    libparted/fs/ufs/ufs.c                   ufs_ops_hp = {
    libparted/fs/xfs/xfs.c                   xfs_ops = {

上一篇:euler 源码 分析
下一篇:内核 ide 堆栈 源码 分析