digraph "msdos_sb_info"
{
 // LATEX_PDF_SIZE
  edge [fontname="Helvetica",fontsize="10",labelfontname="Helvetica",labelfontsize="10"];
  node [fontname="Helvetica",fontsize="10",shape=record];
  Node1 [label="{msdos_sb_info\n|+ cluster_size\l+ clusters\l+ conversion\l+ data_start\l+ dir_entries\l+ dir_start\l+ fat_bits\l+ fat_length\l+ fat_lock\l+ fat_start\land 8 more...\l|}",height=0.2,width=0.4,color="black", fillcolor="grey75", style="filled", fontcolor="black",tooltip=" "];
  Node2 -> Node1 [color="grey25",fontsize="10",style="solid",label=" +fat_wait" ,arrowhead="odiamond",fontname="Helvetica"];
  Node2 [label="{wait_queue\n||}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structwait__queue.html",tooltip=" "];
  Node3 -> Node2 [color="grey25",fontsize="10",style="solid",label=" +task" ,arrowhead="odiamond",fontname="Helvetica"];
  Node3 [label="{taskStruct\n|+ children\l+ counter\l+ egid\l+ euid\l+ gid\l+ groups\l+ id\l+ inodes\l+ last_exit\l+ name\land 8 more...\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structtaskStruct.html",tooltip=" "];
  Node4 -> Node3 [color="grey25",fontsize="10",style="solid",label=" +exec\n+root\n+pwd" ,arrowhead="odiamond",fontname="Helvetica"];
  Node4 [label="{inode\n|+ i_atime\l+ i_blksize\l+ i_blocks\l+ i_count\l+ i_ctime\l+ i_dev\l+ i_dirt\l+ i_flags\l+ i_flock\l+ i_gid\land 14 more...\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structinode.html",tooltip=" "];
  Node5 -> Node4 [color="grey25",fontsize="10",style="solid",label=" +msdos_i" ,arrowhead="odiamond",fontname="Helvetica"];
  Node5 [label="{msdos_inode_info\n|+ i_attrs\l+ i_binary\l+ i_busy\l+ i_start\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structmsdos__inode__info.html",tooltip=" "];
  Node4 -> Node5 [color="grey25",fontsize="10",style="solid",label=" +i_old\n+i_depend" ,arrowhead="odiamond",fontname="Helvetica"];
  Node6 -> Node4 [color="grey25",fontsize="10",style="solid",label=" +i_sb" ,arrowhead="odiamond",fontname="Helvetica"];
  Node6 [label="{super_block\n|+ s_blocksize\l+ s_blocksize_bits\l+ s_dev\l+ s_dirt\l+ s_flags\l+ s_lock\l+ s_magic\l+ s_rd_only\l+ s_time\l+ u\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structsuper__block.html",tooltip=" "];
  Node1 -> Node6 [color="grey25",fontsize="10",style="solid",label=" +msdos_sb" ,arrowhead="odiamond",fontname="Helvetica"];
  Node4 -> Node6 [color="grey25",fontsize="10",style="solid",label=" +s_mounted\n+s_covered" ,arrowhead="odiamond",fontname="Helvetica"];
  Node2 -> Node6 [color="grey25",fontsize="10",style="solid",label=" +s_wait" ,arrowhead="odiamond",fontname="Helvetica"];
  Node7 -> Node6 [color="grey25",fontsize="10",style="solid",label=" +s_op" ,arrowhead="odiamond",fontname="Helvetica"];
  Node7 [label="{super_operations\n|+ notify_change\l+ put_inode\l+ put_super\l+ read_inode\l+ remount_fs\l+ statfs\l+ write_inode\l+ write_super\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structsuper__operations.html",tooltip=" "];
  Node4 -> Node4 [color="grey25",fontsize="10",style="solid",label=" +i_prev\n+i_bound_by\n+i_hash_next\n+i_next\n+i_bound_to\n+i_hash_prev\n+i_mount" ,arrowhead="odiamond",fontname="Helvetica"];
  Node8 -> Node4 [color="grey25",fontsize="10",style="solid",label=" +i_sem" ,arrowhead="odiamond",fontname="Helvetica"];
  Node8 [label="{semaphore\n|+ sount\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structsemaphore.html",tooltip=" "];
  Node2 -> Node8 [color="grey25",fontsize="10",style="solid",label=" +wait" ,arrowhead="odiamond",fontname="Helvetica"];
  Node9 -> Node4 [color="grey25",fontsize="10",style="solid",label=" +pipe_i" ,arrowhead="odiamond",fontname="Helvetica"];
  Node9 [label="{pipe_inode_info\n|+ base\l+ len\l+ lock\l+ rd_openers\l+ readers\l+ start\l+ wr_openers\l+ writers\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structpipe__inode__info.html",tooltip=" "];
  Node2 -> Node9 [color="grey25",fontsize="10",style="solid",label=" +wait" ,arrowhead="odiamond",fontname="Helvetica"];
  Node10 -> Node4 [color="grey25",fontsize="10",style="solid",label=" +ufs2_i" ,arrowhead="odiamond",fontname="Helvetica"];
  Node10 [label="{ufs2_dinode\n|+ di_atime\l+ di_atimensec\l+ di_birthnsec\l+ di_birthtime\l+ di_blksize\l+ di_blocks\l+ di_ctime\l+ di_ctimensec\l+ di_db\l+ di_extb\land 13 more...\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structufs2__dinode.html",tooltip=" "];
  Node2 -> Node4 [color="grey25",fontsize="10",style="solid",label=" +i_wait" ,arrowhead="odiamond",fontname="Helvetica"];
  Node11 -> Node4 [color="grey25",fontsize="10",style="solid",label=" +i_op" ,arrowhead="odiamond",fontname="Helvetica"];
  Node11 [label="{inode_operations\n|+ bmap\l+ create\l+ default_file_ops\l+ follow_link\l+ link\l+ lookup\l+ mkdir\l+ mknod\l+ permission\l+ readlink\l+ rename\l+ rmdir\l+ symlink\l+ truncate\l+ unlink\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structinode__operations.html",tooltip=" "];
  Node12 -> Node4 [color="grey25",fontsize="10",style="solid",label=" +ufs1_i" ,arrowhead="odiamond",fontname="Helvetica"];
  Node12 [label="{ufs1_dinode\n|+ di_atime\l+ di_atimensec\l+ di_blocks\l+ di_ctime\l+ di_ctimensec\l+ di_db\l+ di_flags\l+ di_gen\l+ di_gid\l+ di_ib\land 9 more...\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structufs1__dinode.html",tooltip=" "];
  Node3 -> Node3 [color="grey25",fontsize="10",style="solid",label=" +parent\n+prev\n+next" ,arrowhead="odiamond",fontname="Helvetica"];
  Node13 -> Node3 [color="grey25",fontsize="10",style="solid",label=" +i387" ,arrowhead="odiamond",fontname="Helvetica"];
  Node13 [label="{i387Struct\n|+ cwd\l+ fcs\l+ fip\l+ foo\l+ fos\l+ st_space\l+ swd\l+ twd\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structi387Struct.html",tooltip=" "];
  Node14 -> Node3 [color="grey25",fontsize="10",style="solid",label=" +td" ,arrowhead="odiamond",fontname="Helvetica"];
  Node14 [label="{thread\n|+ abi\l+ o_files\l+ td_retval\l+ vm_daddr\l+ vm_dsize\l+ vm_taddr\l+ vm_tsize\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structthread.html",tooltip=" "];
  Node15 -> Node14 [color="grey25",fontsize="10",style="solid",label=" +frame" ,arrowhead="odiamond",fontname="Helvetica"];
  Node15 [label="{trapframe\n|+ tf_cs\l+ tf_ds\l+ tf_eax\l+ tf_ebp\l+ tf_ebx\l+ tf_ecx\l+ tf_edi\l+ tf_edx\l+ tf_eflags\l+ tf_eip\land 9 more...\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structtrapframe.html",tooltip=" "];
  Node16 -> Node14 [color="grey25",fontsize="10",style="solid",label=" +sigmask" ,arrowhead="odiamond",fontname="Helvetica"];
  Node16 [label="{__sigset\n|+ __bits\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$struct____sigset.html",tooltip=" "];
  Node17 -> Node14 [color="grey25",fontsize="10",style="solid",label=" +rlim" ,arrowhead="odiamond",fontname="Helvetica"];
  Node17 [label="{rlimit\n|+ rlim_cur\l+ rlim_max\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structrlimit.html",tooltip=" "];
  Node18 -> Node14 [color="grey25",fontsize="10",style="solid",label=" +sigact" ,arrowhead="odiamond",fontname="Helvetica"];
  Node18 [label="{sigaction\n|+ __sa_handler\l+ __sa_sigaction\l+ __sigaction_u\l+ sa_flags\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structsigaction.html",tooltip=" "];
  Node16 -> Node18 [color="grey25",fontsize="10",style="solid",label=" +sa_mask" ,arrowhead="odiamond",fontname="Helvetica"];
  Node19 -> Node3 [color="grey25",fontsize="10",style="solid",label=" +files" ,arrowhead="odiamond",fontname="Helvetica"];
  Node19 [label="{fileDescriptor\n|+ buffer\l+ dsk_meta\l+ dup\l+ fd_type\l+ fileName\l+ ino\l+ length\l+ mode\l+ offset\l+ perms\l+ res\l+ resid\l+ size\l+ start\l+ status\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structfileDescriptor.html",tooltip=" "];
  Node4 -> Node19 [color="grey25",fontsize="10",style="solid",label=" +inode" ,arrowhead="odiamond",fontname="Helvetica"];
  Node20 -> Node19 [color="grey25",fontsize="10",style="solid",label=" +cacheNode" ,arrowhead="odiamond",fontname="Helvetica"];
  Node20 [label="{cacheNode\n|+ attributes\l+ dirty\l+ info\l+ name\l+ permissions\l+ present\l+ size\l+ startCluster\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structcacheNode.html",tooltip=" "];
  Node20 -> Node20 [color="grey25",fontsize="10",style="solid",label=" +parent\n+fileListTail\n+fileListHead\n+prev\n+next" ,arrowhead="odiamond",fontname="Helvetica"];
  Node19 -> Node19 [color="grey25",fontsize="10",style="solid",label=" +prev\n+next" ,arrowhead="odiamond",fontname="Helvetica"];
  Node21 -> Node19 [color="grey25",fontsize="10",style="solid",label=" +dmadat" ,arrowhead="odiamond",fontname="Helvetica"];
  Node21 [label="{dmadat\n|+ blkbuf\l+ indbuf\l+ sbbuf\l+ secbuf\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structdmadat.html",tooltip=" "];
  Node22 -> Node19 [color="grey25",fontsize="10",style="solid",label=" +mp" ,arrowhead="odiamond",fontname="Helvetica"];
  Node22 [label="{vfs_mountPoint\n|+ fsInfo\l+ mountPoint\l+ partition\l+ perms\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structvfs__mountPoint.html",tooltip=" "];
  Node23 -> Node22 [color="grey25",fontsize="10",style="solid",label=" +diskLabel" ,arrowhead="odiamond",fontname="Helvetica"];
  Node23 [label="{ubixDiskLabel\n|+ driveType\l+ magicNum\l+ magicNum2\l+ numPartitions\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structubixDiskLabel.html",tooltip=" "];
  Node24 -> Node23 [color="grey25",fontsize="10",style="solid",label=" +partitions" ,arrowhead="odiamond",fontname="Helvetica"];
  Node24 [label="{ubixDiskLabel::ubixPartitions\n|+ pBatSize\l+ pFrag\l+ pFsSize\l+ pFsType\l+ pOffset\l+ pSize\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structubixDiskLabel_1_1ubixPartitions.html",tooltip=" "];
  Node25 -> Node22 [color="grey25",fontsize="10",style="solid",label=" +device" ,arrowhead="odiamond",fontname="Helvetica"];
  Node25 [label="{device_node\n|+ minor\l+ type\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structdevice__node.html",tooltip=" "];
  Node26 -> Node25 [color="grey25",fontsize="10",style="solid",label=" +devRec" ,arrowhead="odiamond",fontname="Helvetica"];
  Node26 [label="{device_resource\n|+ irq\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structdevice__resource.html",tooltip=" "];
  Node27 -> Node25 [color="grey25",fontsize="10",style="solid",label=" +devInfo" ,arrowhead="odiamond",fontname="Helvetica"];
  Node27 [label="{device_interface\n|+ info\l+ init\l+ initialized\l+ ioctl\l+ major\l+ read\l+ reset\l+ size\l+ standby\l+ start\l+ stop\l+ write\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structdevice__interface.html",tooltip=" "];
  Node25 -> Node25 [color="grey25",fontsize="10",style="solid",label=" +prev\n+next" ,arrowhead="odiamond",fontname="Helvetica"];
  Node28 -> Node22 [color="grey25",fontsize="10",style="solid",label=" +fs" ,arrowhead="odiamond",fontname="Helvetica"];
  Node28 [label="{fileSystem\n|+ vfsInitFS\l+ vfsMakeDir\l+ vfsOpenFile\l+ vfsRead\l+ vfsRemDir\l+ vfsSync\l+ vfsType\l+ vfsUnlink\l+ vfsWrite\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structfileSystem.html",tooltip="filesSystem Structure"];
  Node28 -> Node28 [color="grey25",fontsize="10",style="solid",label=" +prev\n+next" ,arrowhead="odiamond",fontname="Helvetica"];
  Node22 -> Node22 [color="grey25",fontsize="10",style="solid",label=" +prev\n+next" ,arrowhead="odiamond",fontname="Helvetica"];
  Node29 -> Node3 [color="grey25",fontsize="10",style="solid",label=" +term" ,arrowhead="odiamond",fontname="Helvetica"];
  Node29 [label="{tty_termNode\n|+ owner\l+ stdin\l+ stdinSize\l+ tty_buffer\l+ tty_colour\l+ tty_pointer\l+ tty_x\l+ tty_y\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structtty__termNode.html",tooltip=" "];
  Node30 -> Node3 [color="grey25",fontsize="10",style="solid",label=" +oInfo" ,arrowhead="odiamond",fontname="Helvetica"];
  Node30 [label="{osInfo\n|+ controlKeys\l+ cwd\l+ gpf\l+ stdin\l+ stdinSize\l+ timer\l+ v86If\l+ v86Task\l+ vmStart\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structosInfo.html",tooltip=" "];
  Node31 -> Node3 [color="grey25",fontsize="10",style="solid",label=" +tss" ,arrowhead="odiamond",fontname="Helvetica"];
  Node31 [label="{tssStruct\n|+ back_link\l+ back_link_reserved\l+ cr3\l+ cs\l+ cs_reserved\l+ ds\l+ ds_reserved\l+ eax\l+ ebp\l+ ebx\land 29 more...\l|}",height=0.2,width=0.4,color="black", fillcolor="white", style="filled",URL="$structtssStruct.html",tooltip=" "];
  Node2 -> Node2 [color="grey25",fontsize="10",style="solid",label=" +next" ,arrowhead="odiamond",fontname="Helvetica"];
}
