Read(User - ext4)

Retired DISLab
(버전 사이의 차이)
이동: 둘러보기, 찾기
 
(한 사용자의 중간의 편집 24개 숨겨짐)
1번째 줄: 1번째 줄:
 
<uml>
 
<uml>
  
(*) --> "read"
+
(*) --> "read()"
"read" --> "SYSCALL_DEFINE3"
+
"read()" --> "SYSCALL_DEFINE3()"
"SYSCALL_DEFINE3" -->  "vfs_read"
+
"vfs_read" -->  "do_sync_read"
+
"do_sync_read" -->"generic_file_aio_read(struct kiocb *iocb, const struct iovec *iov,unsigned long nr_segs, loff_t pos)"
+
  
 +
partition VFS {
 +
"SYSCALL_DEFINE3()" -->  "vfs_read()"
 +
-->  "do_sync_read()"
 +
}
 +
 +
 +
partition EXT4 {
 +
"do_sync_read()" -->"generic_file_aio_read"
 +
 +
--> if "not O_DIRECT" then
 +
-->"do_generic_file_read()"
 +
"do_generic_file_read()"-->if "no page" then
 +
-->"page_cache_sync_readahead()"
 +
-->"ondemand_readahead()"
 +
-->"__do_page_cache_readahead()"
 +
-->"read_pages()"
 +
 +
"do_generic_file_read()"-->if "PageReadahead(page)" then
 +
--> "page_cache_async_readahead()"
 +
-->"ondemand_readahead()"
 +
-->"__do_page_cache_readahead()"
 +
-->"read_pages()"
 +
 +
"do_generic_file_read()"-->"ext4_readpages()"
 +
-->"mpage_readpages()"
 +
-->"do_mpage_readpage()"
 +
-->"mpage_bio_submit()"
 +
}
 +
 +
-->"generic_make_request(bio)"
  
 
</uml>
 
</uml>

2014년 5월 20일 (화) 14:46 현재 판

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