Warning: copy(http://www.plantuml.com/plantuml/img/hJrfR-Gsbj_hLsWn7yOkEEcaCvFCfe80dRGpQQIFe9t9xawZGQWaLfLYbIIBaey9_D_t7Rn9sSxi6kWkYU_nVdmN7wdLgcfBfOhYebAD-B5NqpVV52SNPt_wuOUlllhiizDd2jBfFt40uAU7ujjlYzzNQXhdQYhQHatY8Ckw4AAMrqqbrIO7cyfnBoUrAVZFeDXYHNMinT3tRR4sJr3Eq7HjNrsAgTYDKWeg41CoLLY4JP425LH_BMk6-yNMSbVEhItK0TRKgA2kupp9MsXnsGbwp3H27gWVLnOqbUfIwESrWCkkRkLemLL_75evDNr7K55M-BnPtPJD9AvcEKig5zf3pS7aJJfqauHIoaboeoECQImxDVIZZsRJ7EwslTGLJkM-M6-lfitSgMRVoRfeEbt_TbPtcrMQlYkRLjPwRZDmw9cg3hAUDLO6fUitAtm1r1fwt3QTz6fg-svV09LEOfHAJb4RZkMjQEfCOZjtcTGAPg6JRGIPkmRw7vQZ3Z16d0TcjPKTjt4wD8eGyGN9WGOEXfBGYNpbo9LpKb2HsiCGRrkfcd_99OHXxAT7iB1LIbPJFwfueEfZARRztDNbU1V3i7LAZatPYcu-Rf4MBG9ItxKKnxwMNp_tqkSE9g-wXFNJg590wLz_xaEL55KxgmbAxVO920bhggw2T9fn9TiTG7iiE82EybgEaBCVwxH8IeIM09K6wK0tNG_4CHzbaDxrucPi9YbKoH2O_R6uwKSWTz51seVddtsqgm3JUHMODSkO3o1CnvqmI9aLm_tBKE43O9hzgXpARTCsKoFz2QRc4y9-BaSOXxj1sjQD4jgcDESerhCQoah2ahaA6aTqi2rLii2QNY1JY6lhn080wIo_c8fcX1ebK9Z7fe090_DHxjcscmM71krb1-zd-WqUCtnM7O0totrPtMcMVjqtTR7MMSgfZ8jUOrkfhB3Bc07nFo0HtA-i22m--UJRZ72A44 in /var/www/dislab.hufs.ac.kr/wiki4lab/extensions/PlantUML/PlantUML.php on line 237
SYTest - Retired DISLab

SYTest

(버전 사이의 차이)
이동: 둘러보기, 찾기
65번째 줄: 65번째 줄:
 
unsigned long hostdata[0];
 
unsigned long hostdata[0];
 
}
 
}
Scsi_Host --> list_head
 
 
Scsi_Host --> scsi_host_cmd_pool
 
Scsi_Host --> scsi_host_cmd_pool
 
Scsi_Host --> mutex
 
Scsi_Host --> mutex
113번째 줄: 112번째 줄:
 
kmem_cache --> kmem_cache_cpu
 
kmem_cache --> kmem_cache_cpu
 
kmem_cache --> kmem_cache_order_objects
 
kmem_cache --> kmem_cache_order_objects
kmem_cache --> list_head
 
  
  
147번째 줄: 145번째 줄:
 
}
 
}
 
page --> address_space
 
page --> address_space
page --> list_head
 
 
page --> slab
 
page --> slab
page --> rcu_head
 
  
  
172번째 줄: 168번째 줄:
 
address_space --> radix_tree_root
 
address_space --> radix_tree_root
 
address_space --> rb_root
 
address_space --> rb_root
address_space --> list_head
 
 
address_space --> mutex
 
address_space --> mutex
 
address_space --> backing_dev_info
 
address_space --> backing_dev_info
192번째 줄: 187번째 줄:
 
unsigned long tags[RADIX_TREE_MAX_TAGS][RADIX_TREE_TAG_LONGS];
 
unsigned long tags[RADIX_TREE_MAX_TAGS][RADIX_TREE_TAG_LONGS];
 
}
 
}
radix_tree_node --> rcu_head
 
  
  
256번째 줄: 250번째 줄:
 
inode --> mutex
 
inode --> mutex
 
inode --> hlist_node
 
inode --> hlist_node
inode --> list_head
 
inode --> rcu_head
 
 
inode --> file_lock
 
inode --> file_lock
  
316번째 줄: 308번째 줄:
 
dentry --> lockref
 
dentry --> lockref
 
dentry --> super_block
 
dentry --> super_block
dentry --> list_head
 
dentry --> rcu_head
 
 
dentry --> hlist_node
 
dentry --> hlist_node
  
410번째 줄: 400번째 줄:
 
struct rcu_head rcu;
 
struct rcu_head rcu;
 
}
 
}
super_block --> list_head
 
 
super_block --> file_system_type
 
super_block --> file_system_type
 
super_block --> super_operations
 
super_block --> super_operations
696번째 줄: 685번째 줄:
 
struct list_head all_q_node;
 
struct list_head all_q_node;
 
}
 
}
request_queue --> list_head
 
 
request_queue --> request
 
request_queue --> request
 
request_queue --> elevator_queue
 
request_queue --> elevator_queue
709번째 줄: 697번째 줄:
 
request_queue --> queue_limits
 
request_queue --> queue_limits
 
request_queue --> mutex
 
request_queue --> mutex
request_queue --> rcu_head
 
 
request_queue --> percpu_counter
 
request_queue --> percpu_counter
  
755번째 줄: 742번째 줄:
 
device --> dev_pm_domain
 
device --> dev_pm_domain
 
device --> device_dma_parameters
 
device --> device_dma_parameters
device --> list_head
 
 
device --> dma_coherent_mem
 
device --> dma_coherent_mem
 
device --> dev_archdata
 
device --> dev_archdata
808번째 줄: 794번째 줄:
 
struct bio *tail;
 
struct bio *tail;
 
}
 
}
 +
bio_list --> bio
  
  
865번째 줄: 852번째 줄:
 
struct request *next_rq;
 
struct request *next_rq;
 
}
 
}
request --> list_head
 
 
request --> call_single_data
 
request --> call_single_data
 
request --> work_struct
 
request --> work_struct
885번째 줄: 871번째 줄:
 
}
 
}
 
blk_plug --> list_head
 
blk_plug --> list_head
 +
  
 
class scsi_device << (S,#FF7700)/scsi/scsi_device >> {
 
class scsi_device << (S,#FF7700)/scsi/scsi_device >> {
971번째 줄: 958번째 줄:
 
scsi_device --> Scsi_Host
 
scsi_device --> Scsi_Host
 
scsi_device --> request_queue
 
scsi_device --> request_queue
scsi_device --> list_head
 
 
scsi_device --> scsi_cmnd
 
scsi_device --> scsi_cmnd
 
scsi_device --> scsi_target
 
scsi_device --> scsi_target
1,006번째 줄: 992번째 줄:
 
scsi_cmnd --> scsi_pointer
 
scsi_cmnd --> scsi_pointer
 
scsi_cmnd --> scsi_device
 
scsi_cmnd --> scsi_device
scsi_cmnd --> list_head
 
 
scsi_cmnd --> delayed_work
 
scsi_cmnd --> delayed_work
 
scsi_cmnd --> scsi_data_buffer
 
scsi_cmnd --> scsi_data_buffer
1,036번째 줄: 1,021번째 줄:
 
}
 
}
  
class list_head << (S,#77FF00)/scripts/kconfig/list.h >> {
 
struct list_head *next, *prev;
 
}
 
  
 
class delayed_work << (S,#77FF00)/linux/workqueue.h >> {
 
class delayed_work << (S,#77FF00)/linux/workqueue.h >> {
1,056번째 줄: 1,038번째 줄:
 
work_func_t func;
 
work_func_t func;
 
}
 
}
work_struct --> list_head
+
 
  
 
class timer_list << (S,#77FF00)/linux/timer.h >> {
 
class timer_list << (S,#77FF00)/linux/timer.h >> {
1,089번째 줄: 1,071번째 줄:
 
struct list_head vec[TVR_SIZE];
 
struct list_head vec[TVR_SIZE];
 
}
 
}
tvec_root --> list_head
 
  
 
class tvec << (S,#77FF00)kernel/timer.c >> {
 
class tvec << (S,#77FF00)kernel/timer.c >> {
 
struct list_head vec[TVN_SIZE];
 
struct list_head vec[TVN_SIZE];
 
}
 
}
tvec --> list_head
 
  
 
class workqueue_struct << (S,#77FF00)/kernel/workqueue.c >> {
 
class workqueue_struct << (S,#77FF00)/kernel/workqueue.c >> {
1,113번째 줄: 1,093번째 줄:
 
struct pool_workqueue *dfl_pwq;
 
struct pool_workqueue *dfl_pwq;
 
}
 
}
workqueue_struct --> list_head
 
 
workqueue_struct --> mutex
 
workqueue_struct --> mutex
 
workqueue_struct --> wq_flusher
 
workqueue_struct --> wq_flusher
1,126번째 줄: 1,105번째 줄:
 
struct list_head wait_list;
 
struct list_head wait_list;
 
}
 
}
mutex --> list_head
 
  
  
1,134번째 줄: 1,112번째 줄:
 
struct completion done;     
 
struct completion done;     
 
}
 
}
wq_flusher --> list_head
 
 
wq_flusher --> completion
 
wq_flusher --> completion
  
1,160번째 줄: 1,137번째 줄:
 
struct workqueue_struct *rescue_wq;
 
struct workqueue_struct *rescue_wq;
 
}
 
}
worker --> list_head
 
 
worker --> hlist_node
 
worker --> hlist_node
 
worker --> work_struct
 
worker --> work_struct
1,185번째 줄: 1,161번째 줄:
 
struct timer_list mayday_timer;
 
struct timer_list mayday_timer;
 
}
 
}
worker_pool --> list_head
 
 
worker_pool --> timer_list
 
worker_pool --> timer_list
  
1,212번째 줄: 1,187번째 줄:
 
pool_workqueue --> worker_pool
 
pool_workqueue --> worker_pool
 
pool_workqueue --> workqueue_struct
 
pool_workqueue --> workqueue_struct
pool_workqueue --> list_head
 
 
pool_workqueue --> work_struct
 
pool_workqueue --> work_struct
pool_workqueue --> rcu_head
 
 
 
 
class rcu_head << (S,#77FF00)/linux/types.h >> {
 
#define rcu_head callback_head
 
}
 
rcu_head --> callback_head
 
  
  
1,341번째 줄: 1,307번째 줄:
 
task_struct --> sched_rt_entity
 
task_struct --> sched_rt_entity
 
task_struct --> sched_dl_entity
 
task_struct --> sched_dl_entity
task_struct --> list_head
 
 
task_struct --> pid_link
 
task_struct --> pid_link
 
task_struct --> completion
 
task_struct --> completion
1,360번째 줄: 1,325번째 줄:
 
task_struct --> io_context
 
task_struct --> io_context
 
task_struct --> task_io_accounting
 
task_struct --> task_io_accounting
task_struct --> rcu_head
 
 
task_struct --> pipe_inode_info
 
task_struct --> pipe_inode_info
 
task_struct --> page_frag
 
task_struct --> page_frag
  
  
 +
 +
class rcu_head << (S,#77FF00)/linux/types.h >> {
 +
#define rcu_head callback_head
 +
}
 +
note left: So many structs reference this. So I don't draw line to this.
 +
rcu_head --> callback_head
 +
 +
 +
class list_head << (S,#77FF00)/scripts/kconfig/list.h >> {
 +
struct list_head *next, *prev;
 +
}
 +
note left: So many structs reference this. So I don't draw line to this.
  
  
 
</uml>
 
</uml>

2014년 5월 13일 (화) 22:05 판

[An error occured in PlantUML extension]

개인 도구
이름공간
변수
행위
둘러보기
구성원
연구
연구실
기타
도구모음
인쇄/내보내기