Operating System Lecture 10/17

content


¥Õ¥¡¥¤¥ë´ÉÍý


³¬ÁØ·¿¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Î¼è¤ê°·¤¤

/ ¤Ç¶èÀÚ¤é¤ì¤¿³¬Áؤˤ¿¤¤¤·¤Æ¥¢¥¯¥»¥¹¤¹¤ë¡£

¥Ç¥£¥ì¥¯¥È¥ê¤´¤ÈÊ£¼Ì¤¹¤ë¡£

    cp -r
login ¤·¤¿»þ¤ËÁ°¤ÈƱ¤¸directory¤Ë¤¤¤ë¤¿¤á¤Ë¤Ï?

ls ¤Î¥ª¥×¥·¥ç¥ó

    -R
* (wild card) ¤ò»È¤Ã¤ÆÄ´¤Ù¤ë¡£
    ls *.c
echo *.c ¤Ç¤Ï¤¤¤±¤Ê¤¤¤Î¤«? (wild card ¤òŸ³«¤·¤Æ¤¤¤ë¤Î¤Ïï¤À¤«¹Í¤¨¤è¤¦)


find tool

find ¤Î»È¤¤Êý¤òÄ´¤Ù¤è¤¦¡£
    man find
Perl ¤Î find module ¤Î»È¤¤Êý¤òÄ´¤Ù¤è¤¦¡£
    perldoc -m File::Find
locate database
    man locate
locate database ¤ÎºîÀ®Ë¡¤òÄ´¤Ù¤Æ¡¢ locate database ¤¬Àµ¤·¤¯ºî¤é¤ì¤Æ¤¤¤ë¤«Ä´¤Ù¤è¤¦¡£


Ìä1

¼«Ê¬¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Î²¼¤Î¤¹¤Ù¤Æ¤ÎC¤Î¥½¡¼¥¹¥³¡¼¥É¡¦¥Õ¥¡¥¤¥ë¤ò ¸«¤Ä¤±½Ð¤¹ÊýË¡¤ò²¿¼ïÎफ¼¨¤»¡£ÆÃÄê¤Î¥³¥ó¥Ô¥å¡¼¥¿¤Î¤¹¤Ù¤Æ¤Î C¤Î¥½¡¼¥¹¤ò¸«¤Ä¤±½Ð¤¹ÊýË¡¤ò²¿¼ïÎफ¼¨¤»¡£

¤Þ¤¿¡¢¼ÂºÝ¤Ë¼Â¹Ô¤·¡¢¼Â¹Ô»þ´Ö¤òÈæ³Ó¤»¤è¡£

¼Â¹Ô»þ´Ö¤òÄ´¤Ù¤ë¤Ë¤Ï time ¥³¥Þ¥ó¥É¤ò»È¤¦¡£time ¥³¥Þ¥ó¥É¤Î »È¤¤Êý¤òÄ´¤Ù¤è¡£


¥Õ¥¡¥¤¥ë¥¿¥¤¥×

file ¥³¥Þ¥ó¥É
    man file
Extenstion ¤È¤Î°ã¤¤¤Ï?

Magic Number ¤È¤Ï²¿¤«?


Ìä2

¼«Ê¬¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Î²¼¤Î¤¹¤Ù¤Æ¤Î¥Õ¥¡¥¤¥ë¤È¥Õ¥¡¥¤¥ë¥¿¥¤¥×¤ò ɽ¼¨¤¹¤ë¥×¥í¥°¥é¥à¤ò¤Ê¤ë¤Ù¤¯Ã»¤¯ ½ñ¤¯ÊýË¡¤ò¼¨¤»¡£


File system Interface

 putchar, getchar
 fread, fwrite
 read, write
 seek
 file type
 directory

¥Ð¥Ã¥Õ¥¡¤¬¤¢¤ë¤â¤Î¤È¤Ê¤¤¤â¤Î¤¬¤¢¤ë¡£²¿¸ÎξÊý¤¢¤ë¤Î¤À¤í¤¦¤«?

    

Unix ¤ÎI/O¤Ï¡¢file ( /dev/rwd0a ) ¤Ê¤É¤Ë¤è¤ê¡¢¥Õ¥¡¥¤¥ë¤È¤·¤Æ¤Î Åý°ì¤µ¤ì¤¿¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò»ý¤Ã¤Æ¤¤¤ë¡£

    

Disk ¤Î¹½Â¤

disksetup wd0 ¤·¤Æ¤ß¤è¤¦¡£

    

Cylinder ¤Ï¡¢Head * Track ¤Î¤Þ¤È¤Þ¤ê¡£


Ìä3

Track ´Ö¤Î°Üư®ÅÙ 3 msec/track ¤Î¥Ï¡¼¥É¥Ç¥£¥¹¥¯¤Ç¡¢ Track 5, 20, 100 ¤Î¥¢¥¯¥»¥¹¤Î100msec¸å¤Ë¡¢Track 7, 120, 70, 2 ¤Î ½ç¤Ç¥¢¥¯¥»¥¹¤¬Í褿¡£¤³¤ì¤ò¡¢¤â¤Ã¤È¤â¸úΨ¤è¤¯¥¢¥¯¥»¥¹¤¹¤ë¤¿¤á¤Ë¤Ï¡¢ ¤É¤Î¤è¤¦¤Ê½çÈÖ¤ÇTrack¤Ë¥¢¥¯¥»¥¹¤¹¤ì¤ÐÎɤ¤¤«?

°ìÈÖ®¤¯¥¢¥¯¥»¥¹¤¬½ª¤ë¤³¤È¤¬ºÇŬ¤«¤É¤¦¤«¤Ë¤Ä¤¤¤Æ¤â¹Í»¡¤»¤è¡£ ¸øÊ¿¤Ë¥µ¡¼¥Ó¥¹¤µ¤ì¤Æ¤¤¤ë¤À¤í¤¦¤«?


Unix ¤Î File system

Unix ¤Ç¤Ï°Ê²¼¤Î¤è¤¦¤Ê¥­¡¼¥ï¡¼¥É¤Ç¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤¬ºî¤é¤ì¤Æ¤¤¤ë¡£

 raw device, block device
 partition
 fragmentation
 i-node

Unix i-node

Uhix ¤Ç¤Ï¡¢¥Ç¥£¥ì¥¯¥È¥ê¤Ïi-node¤ò¤µ¤·¡¢i-node ¤ÏÌÚ¹½Â¤¤Î Index¤ò»ý¤Ä¡£¶õ¤¤¤Æ¤¤¤ëÎΰè¤Ï¡¢free i-node list ¤Ë¤¿¤á¤é¤ì¤ë¡£

    


Unix ¤Ç¤Î¥Ç¥£¥¹¥¯´ÉÍý

°Ê²¼¤Ï Unix ¤Î¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Ë´Ø¤¹¤ë¥³¥Þ¥ó¥É¤Ç¤¢¤ë¡£
	sync
	mount
	fsck
	disksetup
	diskdefect
	tar
	dump/restore
¤³¤ì¤é¤Ë¤Ä¤¤¤ÆÄ´¤Ù¤ÆÍý²ò¤·¤è¤¦¡£

¤Þ¤¿¡¢°Ê²¼¤Î¥­¡¼¥ï¡¼¥É¤Ë¤Ä¤¤¤Æ¤âÄ´¤Ù¤Æ¤ß¤è¤¦¡£

	log based file system
	recovery
	tfs
	NFS
    

Windows ¤Î File system

 FAT16
 VFAT
 FAT32
 NTFS

FAT (File Allocation Table )

MSDOS¤äWindows ¤ÇÍѤ¤¤ì¤Æ¤¤¤ë¼êË¡¡£¥Ç¥£¥ì¥¯¥È¥ê¤ÎÃæ¤Ë¡¢°ìÏ¢¤Î ¥Ö¥í¥Ã¥¯¤Ø¤Î¥Ý¥¤¥ó¥¿¤¬¥ê¥¹¥È¤Ç³ÊǼ¤µ¤ì¤Æ¤¤¤ë¡£¤É¤ÎBlock¤¬ ³«¤¤¤Æ¤¤¤ë¤«¤ò´Êñ¤ËÄ´¤Ù¤ë¤¿¤á¤Ë Bit Vector ¤òºî¤ê¡¢¤³¤ì¤â ¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤ÎÃæ¤ÎÆÃÊ̤ÊÉôʬ¤ËÃÖ¤«¤ì¤ë¡£

    


Link, Link count

Unix¤Ç¤ÏÊ£¿ô¤Î¥Ç¥£¥ì¥¯¥È¥ê¤¬Æ±¤¸i-node¤ò»Ø¤·¼¨¤¹¤³¤È¤¬¤¢¤ë¡£ ¤Þ¤¿¡¢¤â¤·¥Õ¥¡¥¤¥ë¤¬¥Ç¥£¥ì¥¯¥È¥ê¤«¤éºï½ü¤µ¤ì¤Æ¤â¡¢¤½¤Î¥Õ¥¡¥¤¥ë¤ò ¤Þ¤Àopen¤·¤Æ¤¤¤ë¥×¥í¥»¥¹¤¬¤¤¤ë¤³¤È¤¬¤¢¤ë¡£¤³¤Î¤è¤¦¤ËÊ£¿ô¤Î ¥×¥í¥»¥¹¤Þ¤¿¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤¬°ì¤Ä¤Îi-node¤ò¤µ¤¹¤³¤È¤ò¥ê¥ó¥¯¤È¤¤¤¦¡£ ¥ê¥ó¥¯¥«¥¦¥ó¥È¤Ï¡¢¤½¤Îi-node¤ò¤µ¤·¤Æ¤¤¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Î¿ô¤È ¥ª¡¼¥×¥ó¤·¤Æ¤¤¤ë¥×¥í¥»¥¹¤Î¿ô¤ÎϤǤ¢¤ë¡£¤³¤ì¤¬0¤Ë¤Ê¤Ã¤Æ½é¤á¤Æ ¥Õ¥¡¥¤¥ë¤¬ºï½ü¤µ¤ì¤¿¤³¤È¤Ë¤Ê¤ë¡£

¤Þ¤¿¡¢Unix¤Ç¤Ïi-node¤Ç¤Ï¤Ê¤¯¡¢Ì¾Á°¤Ë¤è¤Ã¤Æ¤â¥ê¥ó¥¯¤¹¤ë¤³¤È¤¬ ¤Ç¤­¤ë¡£¤³¤Î¾ì¹ç¤Ï¡¢¥ê¥ó¥¯¥«¥¦¥ó¥È¤Ï´Ø·¸¤·¤Ê¤¤¡£¤³¤ì¤Ï¥·¥ó¥Ü ¥ê¥Ã¥¯¥ê¥ó¥¯¤È¸Æ¤Ð¤ì¤ë¡£¥Ç¥£¥ì¥¯¥È¥ê¤Ï¥Ï¡¼¥É¥ê¥ó¥¯¤¹¤ë¤³¤È¤Ï ¤Ç¤­¤Ê¤¤¤¬¡¢¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯(Symbolic link)¤¹¤ë¤³¤È¤Ï¤Ç¤­¤ë¡£²¿¸Î¤À¤í¤¦¤«?

Symbolic link ¤Ï¡¢°Û¤Ê¤ë¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à´Ö¤Ç¤â¥ê¥ó¥¯¤¹¤ë¤³¤È¤¬¤Ç¤­¤¿¤ê¡¢ NFS¤ÇÀܳ¤¬ÀÚ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ç¤â¥ê¥ó¥¯¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¡£Unix ¤Ë¤è¤Ã¤Æ¡¢ ´Ä¶­ÊÑ¿ô¤Ë¤è¤Ã¤Æ¥ê¥ó¥¯Àè¤òÊѤ¨¤ë¤³¤È¤¬¤Ç¤­¤ë¾ò·ïÉÕ¤­Symbolic link ¤òƳÆþ¤·¤Æ¤¤¤ë¾ì¹ç¤¬¤¢¤ë¡£ Symbolic link ¤Ç¤Ï¡¢cd .. ¤Î·ë²Ì¤¬´ñ̯¤Ë¤Ê¤ë¤³¤È¤¬¤¢¤ë¤Î¤ÇÃí°Õ¤·¤è¤¦¡£ (¼ÂºÝ¤Ë´ñ̯¤Ê·ë²Ì¤Ë¤Ê¤ëÎã¤ò¹Í»¡¤·¤Æ¤ß¤è)

    

Authentication

¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢Onwer¤ÈGroup¤Èmode ¤¬ÉÕ¤¤¤Æ¤¤¤ë¡£¤³¤ì¤Ë¤è¤ê¡¢ 狼¤é¥¢¥¯¥»¥¹¤Ç¤­¤ë¤«¡¢Ã¯¤«¤é¥¢¥¯¥»¥¹¤Ç¤­¤Ê¤¤¤«¤ò·èÄꤹ¤ë¡£

Unix ¤Ç¤Ï¥°¥ë¡¼¥×¤Ç´ÉÍý¤¹¤ë¡£¤³¤ì¤ÏÈæ³ÓŪ¾®¤µ¤Ê°ì¤Ä¤Î¥Õ¥¡¥¤¥ë¤Ç ´ÉÍý¤Ç¤­¤ë¤È¤³¤í¤ËÆÃħ¤¬¤¢¤ë¡£

    

¤·¤«¤·¡¢¸Ä¿Í¸Ä¿Í¤òÂоݤȤ·¤¿¤­¤áºÙ¤«¤Ê ¤«¤ó¤ê¤Ï¤Ç¤­¤Ê¤¤¡£¤½¤Î¤è¤¦¤Ê¤³¤È¤ò¤·¤¿¤±¤ì¤Ð¡¢Access/Capability list ¤ò»È¤¦¡£

    

User

/etc/passwd , /etc/master.passwd ¤Ç´ÉÍý¤µ¤ì¤Æ¤¤¤ë¡£Uid ¤Ï¿ô »ú¤Ç16bit¤Î¥·¥¹¥Æ¥à¤¬Â¿¤«¤Ã¤¿¤¬¡¢º£¤Ç¤Ï32bit¤¬ÉáÄÌ¡£¥Ñ¥¹¥ï¡¼ ¥É¼«ÂΤÏ/etc/master.passwd ¤Ë¤¢¤êľÀܸ¡º÷¤Ç¤­¤Ê¤¤¡£¤Þ¤¿¸«¤ë ¤³¤È¤¬¤Ç¤­¤¿¤È¤·¤Æ¤â¡¢encode ¤µ¤ì¤Æ¤¤¤ë¤Î¤Ç²òÀϤÏÉÔ²Äǽ¤Ç¤Ï ¤Ê¤¤¤¬Æñ¤·¤¤¡£

Group

Ê£¿ô¤Î¥æ¡¼¥¶¤ò¤Þ¤È¤á¤ÆÌ¾Á°¤òÉÕ¤±¤¿¤â¤Î¡£

hosts.equiv

¿®¤¸¤é¤ì¤ë(trusted)¥Û¥¹¥È¤Î¥ê¥¹¥È

NIS (Network Information Service)

Passwd ¤ä Group ¤Î¾ðÊó¤ò¥Í¥Ã¥È¥ï¡¼¥¯¾å¤Ç°ì¸µ´ÉÍý¤¹¤ë¤¿¤á¤Î ¥·¥¹¥Æ¥à¡£ÀΤϡ¢Yellow Page ¤È¤¤¤Ã¤¿¡£NIS+ ¤È¤¤¤¦Ê¬»¶¥Ç¡¼¥¿¥Ù¡¼¥¹ ¤òÍѤ¤¤ë¤è¤êÊ£»¨¤Ê¥·¥¹¥Æ¥à¤â¤¢¤ë¡£


NFS ¤Î¾ì¹ç

NFS¤Ç¤Ï¡¢exports ¤È¡¢fstab ¤Ç¡¢¤É¤ì¤òaccess¤¹¤ë¤«¤ò·è¤á¤Æ¤¤¤ë¡£


Setuid, Setgid

su ¥³¥Þ¥ó¥É

sendmail ¤Î setuid bit ¤Î°ÕÌ£¤Ï?

(¥Õ¥¡¥¤¥ë¤½¤Î¤â¤Î¤Ë¡¢¥»¥­¥å¥ê¥Æ¥£¤Î°À­¤ò»ý¤¿¤»¤ë¤³¤È¤ÏÀµ¤·¤¤¤Î¤« ¹Í¤¨¤Æ¤ß¤è¤¦ )


ÌäÂê

º£Æü¤ÎÌäÂê¤Ë´Ø¤·¤Æ¤Ï¡¢¤Þ¤È¤á¤Æ¡¢°Ê²¼¤Î¥¿¥¤¥È¥ë¤Ç
    Subject: Report on Operating System Lecture 10/17
kono@ie.u-ryukyu.ac.jp ¤Þ¤ÇÁ÷¤ë¤³¤È¡£

½ÐÀʤ·¤Ê¤¤¾ì¹ç¤Ç¤â¡¢¤³¤Î¥á¡¼¥ë¤òÁ÷¤ì¤Ð½ÐÀʰ·¤¤¤È¤·¤Þ¤¹¡£


½ÉÂê

¡Ö²ÝÂê 1. ¥Õ¥¡¥¤¥ëÁàºî¤È¥Õ¥¡¥¤¥ë¡¦¥·¥¹¥Æ¥à¡× ¤ò¡¢Íè½µ¤Þ¤Ç¤Ë¡¢¤ª¤³¤Ê¤¦¤³¤È¡£¥ì¥Ý¡¼¥È¤Ï¥á¡¼¥ë¤Ç

    Subject: Practice on Operating System Lecture 10/10
¤È¤¤¤¦¤è¤¦¤Ë¡¢²ÝÂê¤ò½Ð¤·¤¿ÆüÉÕ¤ò¥µ¥Ö¥¸¥§¥¯¥È¤ËÆþ¤ì¤¿¥á¡¼¥ë¤Ç Äó½Ð¤·¤Æ²¼¤µ¤¤¡£¥µ¥Ö¥¸¥§¥¯¥È¤ò´Ö°ã¤¨¤Ê¤¤¤³¤È!

½ÉÂê¤ÏËè½µ½Ð¤ë¤Î¤ÇÄó½Ð¤¬±ä¤Ó¤ë¤È¤Ï¤Þ¤ê¤Þ¤¹¤Î¤Çµ¤¤òÉÕ¤±¤Æ¤¯¤À¤µ¤¤¡£

Content

  1. ¥Õ¥¡¥¤¥ë´ÉÍý
  2. ³¬ÁØ·¿¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Î¼è¤ê°·¤¤
  3. find tool
  4. Ìä1
  5. ¥Õ¥¡¥¤¥ë¥¿¥¤¥×
  6. Ìä2
  7. File system Interface
  8. Disk ¤Î¹½Â¤
  9. Ìä3
  10. Unix ¤Î File system
  11. Unix i-node
  12. Unix ¤Ç¤Î¥Ç¥£¥¹¥¯´ÉÍý
  13. Windows ¤Î File system
  14. FAT (File Allocation Table )
  15. Link, Link count
  16. Authentication
  17. User
  18. Group
  19. hosts.equiv
  20. NIS (Network Information Service)
  21. NFS ¤Î¾ì¹ç
  22. Setuid, Setgid
  23. ÌäÂê
  24. ½ÉÂê