| È°¼º ºí·Ï I / O ½ºÄÉÁÙ¸µ ½Ã½ºÅÛ ABISS´Â µð½ºÅ© IO ÀÛ¾÷ÀÇ ¿ì¼± ¼øÀ§¸¦ ±¸ÇöÇÏ´Â Linux Ä¿³ÎÀÇ È®ÀåÀÔ´Ï´Ù. |
Áö±Ý ´Ù¿î·Îµå |
È°¼º ºí·Ï I / O ½ºÄÉÁÙ¸µ ½Ã½ºÅÛ ¼øÀ§ ¹× ¿ä¾à
- °Ô½ÃÀÚ À̸§:
- Werner Almesberger
È°¼º ºí·Ï I / O ½ºÄÉÁÙ¸µ ½Ã½ºÅÛ Å±×
È°¼º ºí·Ï I / O ½ºÄÉÁÙ¸µ ½Ã½ºÅÛ ¼³¸í
ABISS´Â µð½ºÅ© IO ÀÛ¾÷ÀÇ ¿ì¼± ¼øÀ§¸¦ ±¸ÇöÇÏ´Â Linux Ä¿³ÎÀÇ È®ÀåÀÔ´Ï´Ù. ÀÌ·¯ÇÑ º¸Àå µÈ ½Ç½Ã°£ (RT) ½ºÆ®¸² ¿Ü¿¡µµ ÃÖ»óÀÇ ³ë·Â (BE) µð½ºÅ© Æ®·¡ÇÈÀ»À§ÇÑ ¿©·¯ ¿ì¼± ¼øÀ§°¡ Æ÷ÇԵǾú½À´Ï´Ù. ½Ã½ºÅÛÀº Á¤Ã¥À¸·Î ¿©·¯ ¿ì¼± ¼øÀ§¸¦ ±¸ÇöÇÏ´Â ¿¤¸®º£ÀÌÅ͸¦ Æ÷ÇÔÇÏ¿© Ä¿³Î¿¡ Ãß°¡ µÈ ÇÁ·¹ÀÓ ¿öÅ©·Î ±¸¼ºµË´Ï´Ù. »ç¿ëÀÚ °ø°£¿¡¼ ±¸Çö µÈ Á¶Á¤ ´ÜÀ§. ÀÌ·¯ÇÑ Á¢±Ù ¹æ½ÄÀº »ç¿ëÀÚ °ø°£¿¡¼ Ä¿³Î ÀÎÇÁ¶ó (ÇÁ·¹ÀÓ ¿öÅ©)¿Í Á¤Ã¥ (¿¹ : ÀÔÇÐ ÅëÁ¦) °£ÀÇ ºÐ¸®¸¦ º¸ÀåÇÕ´Ï´Ù. ABISS È®ÀåÀº ÀÏ¹Ý POSIX API¸¦ ÅëÇØ ¾×¼¼½º ÇÑ ÆÄÀÏ¿¡ Àû¿ëµÈ ioctls¸¦ ÅëÇØ Á¦¾îµË´Ï´Ù. STDIO (ABISS_FOPEN (), ABISS_FREAD (), ABISS_FREAD (), ABISS_FRITE (), ABISS_FRITE () µîÀÇ ·¡ÆÛ ÇÔ¼ö°¡ÀÖ´Â ÀÛÀº ¶óÀ̺귯¸®´Â »óÀ§ API¸¦ ¼±È£ÇÏ´Â ÀÀ¿ë ÇÁ·Î±×·¥¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. Abiss´Â ¿©ÀüÈ÷ ½ÇÇèÀûÀÔ´Ï´Ù. ÇöÀç Áö¹æ, vFAT, ext2 ¹× ext3 ÆÄÀÏ ½Ã½ºÅÛ¿¡¼ Àд µ¥ ¿ì¼± ¼øÀ§°¡ ³ôÀº ¿ì¼± ¼øÀ§¸¦ Á¦°ø ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±Û¾²±â´Â Ç×»ó ÃÖ¼±ÀÇ ³ë·ÂÀÔ´Ï´Ù. ¸®¼Ò½º ÄÁÆ®·ÑÀ»À§ÇÑ ÇÁ·¹ÀÓ ¿öÅ©°¡ Á¸ÀçÇÕ´Ï´Ù. µû¶ó¼ ÇöÀç ±¸ÇöÀº ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ ¿äû µÈ ¼ºñ½º¸¦ ÁؼöÇÏÁö¸¸ ´ë¿ªÆø º¸ÁõÀ» ÇÒ ¼ö´Â ¾ø½À´Ï´Ù. ¶ÇÇÑ ÀÀ¿ë ÇÁ·Î±×·¥¿¡¼ ¾òÀº ¼ºñ½º¿¡ ¿µÇâÀ» ÁÙ ¼öÀÖ´Â Ä¿³ÎÀÇ ´Ù¾çÇÑ »ê¹ßÀû ÀÎ ¼Ò½º°¡ ÀÖÁö¸¸ÀÌ ¸±¸®½ºÀÇ »õ·Î¿î ±â´É : ¡¤ Linux 2.6.16.1·Î ¾÷µ¥ÀÌÆ®µÇ¾ú½À´Ï´Ù. ¡¤ ȣȯ¼º °èÃþÀÌ ±Û·Î¹ú Çڵ鷯¿¡¼ À̵¿µÇ¾ú½À´Ï´Ù. ABISS°¡ Áö¿øÇÏ´Â °¢ ÆÄÀÏ ½Ã½ºÅÛÀÇ °¢ ioctl¿¡ ¡¤ ÀÌÁ¦ CFQ°¡ Áö¿øµË´Ï´Ù. ¡¤ÀÌ ¹öÀü¿¡¼´Â Àü¿ø °ü¸® ¹× ¿À¹ö·¦ 󸮰¡ ºñÈ°¼ºÈµÇ¾ú½À´Ï´Ù.
È°¼º ºí·Ï I / O ½ºÄÉÁÙ¸µ ½Ã½ºÅÛ °ü·Ã ¼ÒÇÁÆ®¿þ¾î