āĻ‡āĻ‚āĻ°ā§‡āĻœāĻŋāĻĢāĻ°āĻžāĻ¸āĻŋāĻ¸ā§āĻĒā§āĻ¯āĻžāĻ¨āĻŋāĻļ

āĻ…āĻ¨āĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻ•āĻ¸ āĻĢā§‡āĻ­āĻŋāĻ•āĻ¨

āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_lca2010 - āĻ•ā§āĻ˛āĻžāĻ‰āĻĄā§‡ āĻ…āĻ¨āĻ˛āĻžāĻ‡āĻ¨

āĻ‰āĻŦā§āĻ¨ā§āĻŸā§ āĻ…āĻ¨āĻ˛āĻžāĻ‡āĻ¨, āĻĢā§‡āĻĄā§‹āĻ°āĻž āĻ…āĻ¨āĻ˛āĻžāĻ‡āĻ¨, āĻ‰āĻ‡āĻ¨ā§āĻĄā§‹āĻœ āĻ…āĻ¨āĻ˛āĻžāĻ‡āĻ¨ āĻāĻŽā§āĻ˛ā§‡āĻŸāĻ° āĻŦāĻž MAC OS āĻ…āĻ¨āĻ˛āĻžāĻ‡āĻ¨ āĻāĻŽā§āĻ˛ā§‡āĻŸāĻ°ā§‡āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ OnWorks āĻŦāĻŋāĻ¨āĻžāĻŽā§‚āĻ˛ā§āĻ¯ā§‡ āĻšā§‹āĻ¸ā§āĻŸāĻŋāĻ‚ āĻĒā§āĻ°āĻĻāĻžāĻ¨āĻ•āĻžāĻ°ā§€āĻ¤ā§‡ explain_lca2010 āĻšāĻžāĻ˛āĻžāĻ¨

āĻāĻŸāĻŋ āĻšāĻ˛ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_lca2010 āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻ¯āĻž āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻāĻ•āĻžāĻ§āĻŋāĻ• āĻŦāĻŋāĻ¨āĻžāĻŽā§‚āĻ˛ā§āĻ¯ā§‡āĻ° āĻ…āĻ¨āĻ˛āĻžāĻ‡āĻ¨ āĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻŸā§‡āĻļāĻ¨ āĻ¯ā§‡āĻŽāĻ¨ āĻ‰āĻŦā§āĻ¨ā§āĻŸā§ āĻ…āĻ¨āĻ˛āĻžāĻ‡āĻ¨, āĻĢā§‡āĻĄā§‹āĻ°āĻž āĻ…āĻ¨āĻ˛āĻžāĻ‡āĻ¨, āĻ‰āĻ‡āĻ¨ā§āĻĄā§‹āĻœ āĻ…āĻ¨āĻ˛āĻžāĻ‡āĻ¨ āĻāĻŽā§āĻ˛ā§‡āĻŸāĻ° āĻŦāĻž MAC OS āĻ…āĻ¨āĻ˛āĻžāĻ‡āĻ¨ āĻāĻŽā§āĻ˛ā§‡āĻŸāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ OnWorks āĻĢā§āĻ°āĻŋ āĻšā§‹āĻ¸ā§āĻŸāĻŋāĻ‚ āĻĒā§āĻ°āĻĻāĻžāĻ¨āĻ•āĻžāĻ°ā§€āĻ¤ā§‡ āĻšāĻžāĻ˛āĻžāĻ¨ā§‹ āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤

āĻ•āĻžāĻ°ā§āĻ¯āĻ•ā§āĻ°āĻŽ:

NAME āĻāĻ°


āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_lca2010 - āĻ•ā§‹āĻ¨ āĻŽāĻžāĻ§ā§āĻ¯āĻŽ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧāĻ¨āĻŋ: āĻ¯āĻ–āĻ¨ āĻĒāĻĄāĻŧāĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻŦāĻ¨ā§āĻ§ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻšāĻ¯āĻŧ āĻ¸ā§āĻŸā§āĻ°āĻ°āĻ°(3) āĻāĻ°
āĻŽāĻ¨āĨ¤

āĻĒā§āĻ°ā§‡āĻ°āĻŖāĻž


1980 āĻāĻ° āĻĻāĻļāĻ•ā§‡āĻ° āĻ—ā§‹āĻĄāĻŧāĻžāĻ° āĻĻāĻŋāĻ•ā§‡ āĻ†āĻŽāĻžāĻ° āĻ•āĻžāĻ›ā§‡ libexplain āĻāĻ° āĻ§āĻžāĻ°āĻŖāĻžāĻŸāĻŋ āĻ†āĻ¸ā§‡āĨ¤ āĻ¯āĻ–āĻ¨āĻ‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛
āĻāĻ•āĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻĢā§‡āĻ°āĻ¤ āĻĻā§‡āĻ¯āĻŧ, āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻ āĻŋāĻ• āĻœāĻžāĻ¨ā§‡ āĻ•āĻŋ āĻ­ā§āĻ˛ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡... āĻāĻŦāĻ‚ āĻāĻŸāĻŋāĻ•ā§‡ āĻ¸āĻ‚āĻ•ā§āĻšāĻŋāĻ¤ āĻ•āĻ°ā§‡
8 āĻŦāĻŋāĻŸā§‡āĻ° āĻ•āĻŽ āĻ­ā§āĻ˛. āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€ āĻ¸ā§āĻĨāĻžāĻ¨ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻāĻ•āĻ‡ āĻ¤āĻĨā§āĻ¯ āĻ…ā§āĻ¯āĻžāĻ•ā§āĻ¸ā§‡āĻ¸ āĻ†āĻ›ā§‡, āĻāĻŸāĻŋ
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ° āĻ¸ā§āĻĨāĻžāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻŸāĻŋ āĻ‰āĻ¸ā§āĻ•ā§‡ āĻĻā§‡āĻ“āĻ¯āĻŧāĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ āĻŋāĻ• āĻ•ā§€ āĻ˜āĻŸā§‡āĻ›ā§‡ āĻ¤āĻž āĻŦā§‡āĻ° āĻ•āĻ°āĻž āĻ¸āĻŽā§āĻ­āĻŦ āĻšāĻ“āĻ¯āĻŧāĻž āĻ‰āĻšāĻŋāĻ¤
āĻĢāĻŋāĻ°ā§‡ āĻ¯āĻžāĻ¨, āĻāĻŦāĻ‚ āĻ­āĻžāĻ˛ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻ˛āĻŋāĻ–āĻ¤ā§‡ āĻāĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§āĻ¨āĨ¤

āĻāĻŸāĻž āĻ¯ā§‡ āĻ¸āĻšāĻœ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡?

āĻ­ā§āĻ˛ āĻŦāĻžāĻ°ā§āĻ¤āĻž as āĻšāĻžāĻ¤ā§āĻ°āĻ¤āĻž
āĻ­āĻžāĻ˛ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ° āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ—ā§āĻ˛āĻŋ āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻļāĻ‡ āĻ¸ā§‡āĻ‡ "āĻāĻ• āĻļāĻ¤āĻžāĻ‚āĻļ" āĻ•āĻžāĻœ āĻ¯āĻž āĻ¸āĻŽāĻ¯āĻŧāĻ¸ā§‚āĻšā§€āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŦāĻžāĻĻ āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ
āĻšāĻžāĻĒ āĻ†āĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒ squeezes. āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻāĻ•āĻŸāĻŋ āĻ­āĻžāĻ˛ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻļāĻžāĻ˛ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡,
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ° āĻ…āĻ­āĻŋāĻœā§āĻžāĻ¤āĻžāĻ° āĻ…āĻ¸āĻžāĻŽāĻžā§āĻœāĻ¸ā§āĻ¯āĻĒā§‚āĻ°ā§āĻŖ āĻ‰āĻ¨ā§āĻ¨āĻ¤āĻŋ, āĻ¯āĻ–āĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€ āĻ­ā§€āĻ¤āĻŋāĻ•āĻ° āĻšāĻ¯āĻŧā§‡ āĻ¯āĻžāĻ¯āĻŧ
āĻ…āĻœāĻžāĻ¨āĻž āĻ…āĻžā§āĻšāĻ˛ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ¸āĻŽā§āĻŽā§āĻ–ā§€āĻ¨ āĻšāĻ¯āĻŧ āĻ¨āĻž. āĻāĻŸāĻŋ āĻ•ā§‹āĻ¨ āĻ¸āĻšāĻœ āĻ•āĻžāĻœ āĻ¨āĻ¯āĻŧāĨ¤

āĻ˛āĻžāĻ°ā§āĻ­āĻž āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽāĻžāĻ° āĻšāĻŋāĻ¸āĻžāĻŦā§‡, āĻ˛ā§‡āĻ–āĻ• (āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ¨āĻŋāĻ°ā§āĻ­ā§āĻ˛) āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻŸāĻŋ āĻĻā§‡āĻ–ā§‡āĻ¨āĻ¨āĻŋ
āĻāĻ‡ āĻŽāĻ¤ āĻŦāĻžāĻ°ā§āĻ¤āĻž:
āĻ­āĻžāĻ¸āĻŽāĻžāĻ¨ āĻŦā§āĻ¯āĻ¤āĻŋāĻ•ā§āĻ°āĻŽ (āĻ•ā§‹āĻ° āĻĄāĻžāĻŽā§āĻĒāĻĄ)
āĻ¯āĻ¤āĻ•ā§āĻˇāĻŖ āĻ¨āĻž āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻ…-āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽāĻžāĻ° āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻžāĻŸāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ¤āĻž āĻ¨āĻ¯āĻŧ
āĻ‡āĻ‰āĻ¨āĻŋāĻ•ā§āĻ¸ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ—ā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻœāĻŋāĻ¨āĻŋāĻ¸ āĻ­ā§āĻ˛āĨ¤ āĻ†āĻĒāĻ¨āĻŋ āĻ•āĻ¤ āĻ˜āĻ¨ āĻ˜āĻ¨ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻ¨ āĻ¯ā§‡āĻŽāĻ¨:
$ ./āĻŽā§‚āĻ°ā§āĻ–
āĻĢāĻžāĻ‡āĻ˛ āĻ–ā§āĻ˛āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¨āĻž
$
āĻāĻ‡ āĻŽā§āĻšā§āĻ°ā§āĻ¤ā§‡ āĻāĻ•āĻœāĻ¨ āĻŦāĻŋāĻ•āĻžāĻļāĻ•āĻžāĻ°ā§€āĻ° āĻœāĻ¨ā§āĻ¯ āĻĻā§āĻŸāĻŋ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡:

1.
āĻ†āĻĒāĻ¨āĻŋ āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻŦāĻžāĻ—āĻžāĻ° āĻšāĻžāĻ˛āĻžāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨, āĻ¯ā§‡āĻŽāĻ¨ āĻœāĻŋāĻĄāĻŋāĻŦāĻŋ(1), āĻŦāĻž

2.
āĻ¤ā§āĻŽāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ° āĻ¸ā§āĻŸā§āĻ°ā§‡āĻ¸(āĻāĻ•ā§āĻ¸āĻāĻ¨āĻāĻŽāĻāĻ•ā§āĻ¸) āĻŦāĻž āĻ†āĻāĻŸāĻŋ(1) āĻ­āĻŋāĻ¤āĻ°ā§‡ āĻ¤āĻžāĻ•āĻžāĻ¨āĨ¤

āĻŽāĻ¨ā§‡ āĻ°āĻžāĻ–āĻŦā§‡āĻ¨ āĻ¯ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻĻā§‡āĻ° āĻāĻ‡ āĻ¸āĻ°āĻžā§āĻœāĻžāĻŽāĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ…ā§āĻ¯āĻžāĻ•ā§āĻ¸ā§‡āĻ¸ āĻ¨āĻžāĻ“ āĻĨāĻžāĻ•āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡, āĻ•ā§āĻˇāĻŽāĻ¤āĻžāĻ•ā§‡ āĻ›ā§‡āĻĄāĻŧā§‡ āĻĻāĻŋāĻ¨
āĻ¤āĻžāĻĻā§‡āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡āĨ¤ (āĻāĻ°āĻĒāĻ° āĻĨā§‡āĻ•ā§‡ āĻ…āĻ¨ā§‡āĻ• āĻĻāĻŋāĻ¨ āĻšāĻ¯āĻŧā§‡ āĻ—ā§‡āĻ›ā§‡ āĻ‡āĻ‰āĻ¨āĻŋāĻ•ā§āĻ¸ āĻļāĻŋāĻ•ā§āĻˇāĻžāĻ¨āĻŦāĻŋāĻ¸ āĻŽāĻžāĻ¨ā§‡ "āĻļā§āĻ§ā§ āĻ˛āĻŋāĻ–ā§‡āĻ›ā§‡āĻ¨ āĻāĻ•
āĻĄāĻŋāĻ­āĻžāĻ‡āĻ¸ āĻĄā§āĻ°āĻžāĻ‡āĻ­āĻžāĻ°".)

āĻāĻ‡ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖā§‡, āĻ¤āĻŦā§‡, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ¸ā§āĻŸā§āĻ°ā§‡āĻ¸(1) āĻĒā§āĻ°āĻ•āĻžāĻļ āĻ•āĻ°ā§‡
$ āĻ¸ā§āĻŸā§āĻ°ā§‡āĻ¸ -e āĻŸā§āĻ°ā§‡āĻ¸=āĻ–ā§‹āĻ˛āĻž ./āĻŽā§‚āĻ°ā§āĻ–
open("some/file", O_RDONLY) = -1 ENOENT (āĻāĻŽāĻ¨ āĻ•ā§‹āĻ¨ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻž āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨ā§‡āĻ‡)
āĻĢāĻžāĻ‡āĻ˛ āĻ–ā§āĻ˛āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¨āĻž
$
āĻāĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ā§‡āĻ° āĻ¤ā§āĻ˛āĻ¨āĻžāĻ¯āĻŧ āĻ¯āĻĨā§‡āĻˇā§āĻŸ āĻŦā§‡āĻļāĻŋ āĻ¤āĻĨā§āĻ¯āĨ¤ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤,
āĻŦā§‹āĻ•āĻž āĻ¸ā§‹āĻ°ā§āĻ¸ āĻ•ā§‹āĻĄ āĻāĻ‡ āĻŽāĻ¤ āĻĻā§‡āĻ–āĻžāĻ¯āĻŧ
int fd = open("āĻ•āĻŋāĻ›ā§/āĻ•āĻŋāĻ›ā§", O_RDONLY);
āĻ¯āĻĻāĻŋ (fd <0)
{
fprintf(stderr, "āĻĢāĻžāĻ‡āĻ˛ āĻ–ā§āĻ˛āĻ¤ā§‡ āĻĒāĻžāĻ°āĻ›āĻŋ āĻ¨āĻž\n");
āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨(ā§¨ā§Ļā§§ā§§);
}
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ•ā§‡ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž āĻ¯ā§‡ āĻĢāĻžāĻ‡āĻ˛, āĻāĻŦāĻ‚ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ•ā§‡ āĻŦāĻ˛āĻ¤ā§‡āĻ“ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧ āĻ¯ā§‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋ. āĻĢāĻžāĻ‡āĻ˛ āĻ›āĻŋāĻ˛
āĻāĻŽāĻ¨āĻ•āĻŋ āĻ¸ā§‡āĻ–āĻžāĻ¨ā§‡? āĻāĻ•āĻŸāĻŋ āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ›āĻŋāĻ˛? āĻāĻŸāĻŋ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻŦāĻ˛ā§‡ āĻ¯ā§‡ āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻ–ā§‹āĻ˛āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°āĻ›āĻŋāĻ˛
āĻĢāĻžāĻ‡āĻ˛, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ¯ā§‡ āĻ¸āĻŽā§āĻ­āĻŦāĻ¤ āĻĻā§āĻ°ā§āĻ˜āĻŸāĻ¨āĻž āĻĻā§āĻŦāĻžāĻ°āĻž āĻ›āĻŋāĻ˛.

āĻ†āĻĒāĻ¨āĻžāĻ° āĻ•ā§āĻ˛ā§ āĻ¸ā§āĻŸāĻŋāĻ•āĻŸāĻŋ āĻ§āĻ°ā§āĻ¨ āĻāĻŦāĻ‚ āĻāĻŸāĻŋ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻ˛āĻžāĻ°ā§āĻ­āĻž āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽāĻžāĻ°āĻ•ā§‡ āĻŽāĻžāĻ°āĻ¤ā§‡ āĻ¯āĻžāĻ¨āĨ¤ āĻ¤āĻžāĻ° āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻŦāĻ˛ā§āĻ¨ āĻ­ā§āĻ˛(3).
āĻĒāĻ°ā§‡āĻ° āĻŦāĻžāĻ° āĻ†āĻĒāĻ¨āĻŋ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽāĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ†āĻĒāĻ¨āĻŋ āĻāĻ•āĻŸāĻŋ āĻ­āĻŋāĻ¨ā§āĻ¨ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻŦā§‡āĻ¨:
$ ./āĻŽā§‚āĻ°ā§āĻ–
open: āĻāĻ‡ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻ•ā§‹āĻ¨ā§‹ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻž āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨ā§‡āĻ‡
$
āĻ…āĻ—ā§āĻ°āĻ—āĻ¤āĻŋ, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ†āĻŽāĻ°āĻž āĻ¯āĻž āĻ†āĻļāĻž āĻ•āĻ°āĻŋ āĻ¤āĻž āĻ¨āĻ¯āĻŧāĨ¤ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻšāĻ˛ā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€ āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨
āĻ¤āĻžāĻ•ā§‡ āĻŦāĻ˛ā§‡āĻ¨ āĻ¨āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ•āĻŋ āĻ›āĻŋāĻ˛? āĻ‰ā§ŽāĻ¸ā§‡āĻ° āĻĻāĻŋāĻ•ā§‡ āĻ¤āĻžāĻ•āĻŋāĻ¯āĻŧā§‡ āĻ†āĻŽāĻ°āĻž āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻ‡
int fd = open("āĻ•āĻŋāĻ›ā§/āĻ•āĻŋāĻ›ā§", O_RDONLY);
āĻ¯āĻĻāĻŋ (fd <0)
{
pererror("āĻ–ā§‹āĻ˛āĻž");
āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨(ā§¨ā§Ļā§§ā§§);
}
āĻ•ā§āĻ˛ā§ āĻ¸ā§āĻŸāĻŋāĻ• āĻĻāĻŋāĻ¯āĻŧā§‡ āĻ†āĻ°ā§‡āĻ•āĻŸāĻŋ āĻĻā§ŒāĻĄāĻŧāĻžāĻ¨ā§‹āĻ° āĻ¸āĻŽāĻ¯āĻŧāĨ¤ āĻāĻ‡ āĻ¸āĻŽāĻ¯āĻŧ, āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻāĻ• āĻ§āĻžāĻĒ āĻ˛āĻžāĻ—ā§‡
āĻāĻ—āĻŋāĻ¯āĻŧā§‡ āĻāĻŦāĻ‚ āĻāĻ• āĻ§āĻžāĻĒ āĻĒāĻŋāĻ›āĻ¨ā§‡:
$ ./āĻŽā§‚āĻ°ā§āĻ–
āĻ•āĻŋāĻ›ā§/āĻ•āĻŋāĻ›ā§: āĻ…āĻ¨ā§āĻ°ā§‚āĻĒ āĻ•ā§‹āĻ¨ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻž āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨ā§‡āĻ‡
$
āĻāĻ–āĻ¨ āĻ†āĻŽāĻ°āĻž āĻœāĻžāĻ¨āĻŋ āĻ¯ā§‡ āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋ āĻ–ā§‹āĻ˛āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°āĻ›āĻŋāĻ˛, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ–āĻ¨ āĻ†āĻ° āĻœāĻžāĻ¨āĻžāĻ¨ā§‹ āĻšāĻ¯āĻŧ āĻ¨āĻž āĻ¯ā§‡ āĻāĻŸāĻŋ āĻ›āĻŋāĻ˛ āĻ–ā§‹āĻ˛āĻž(2)
āĻ¯ā§‡ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡. āĻāĻ‡ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻāĻŸāĻŋ āĻ¸āĻŽā§āĻ­āĻŦāĻ¤ āĻ¤āĻžā§ŽāĻĒāĻ°ā§āĻ¯āĻĒā§‚āĻ°ā§āĻŖ āĻ¨āĻ¯āĻŧ, āĻ¤āĻŦā§‡ āĻāĻŸāĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¤āĻžā§ŽāĻĒāĻ°ā§āĻ¯āĻĒā§‚āĻ°ā§āĻŖ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡
āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛āĨ¤ āĻāĻŸāĻž āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°āĻ¤ā§‹ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§āĻ¨(2) āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§‡, āĻāĻ•āĻŸāĻŋ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ āĻ¯āĻž āĻŦā§‹āĻāĻžāĻ¯āĻŧ
āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨āĨ¤
const char * āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¨āĻžāĻŽ = "āĻ•āĻŋāĻ›ā§/āĻ•āĻŋāĻ›ā§";
int fd = open(āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¨āĻžāĻŽ, O_RDONLY);
āĻ¯āĻĻāĻŋ (fd <0)
{
pererror(āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¨āĻžāĻŽ);
āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨(ā§¨ā§Ļā§§ā§§);
}
āĻ‰āĻĒāĻ°ā§‡āĻ° āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻ•ā§‹āĻĄāĻŸāĻŋ āĻĻā§āĻ°ā§āĻ­āĻžāĻ—ā§āĻ¯āĻŦāĻļāĻ¤ āĻ¨āĻ¨-āĻ˛āĻžāĻ°ā§āĻ­āĻž āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽāĻžāĻ°āĻĻā§‡āĻ° āĻœāĻ¨ā§āĻ¯āĻ“ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĨ¤ āĻ¸āĻŽāĻ¯āĻŧ
āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° padawan āĻļāĻŋāĻ•ā§āĻˇāĻžāĻ°ā§āĻĨā§€ āĻŦāĻ˛āĻ¤ā§‡ āĻ¸ā§āĻŸā§āĻ°āĻ°āĻ°(3) āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛āĨ¤
$ ./āĻŽā§‚āĻ°ā§āĻ–
āĻ–ā§‹āĻ˛āĻž āĻ•āĻŋāĻ›ā§/āĻ•āĻŋāĻ›ā§: āĻ…āĻ¨ā§āĻ°ā§‚āĻĒ āĻ•ā§‹āĻ¨ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻž āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨ā§‡āĻ‡
$
āĻāĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ° āĻ•āĻžāĻ›ā§‡ āĻ‰āĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻāĻŽāĻ¨ āĻ¤āĻĨā§āĻ¯āĻ•ā§‡ āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ• āĻ•āĻ°ā§‡ āĻ¤ā§‹āĻ˛ā§‡āĨ¤ āĻ•ā§‹āĻĄāĻŸāĻŋ āĻĻā§‡āĻ–ā§‡ āĻŽāĻ¨ā§‡ āĻšāĻšā§āĻ›ā§‡
āĻāĻ‡:
const char * āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¨āĻžāĻŽ = "āĻ•āĻŋāĻ›ā§/āĻ•āĻŋāĻ›ā§";
int fd = open(āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¨āĻžāĻŽ, O_RDONLY);
āĻ¯āĻĻāĻŋ (fd <0)
{
fprintf(stderr, "āĻ“āĻĒā§‡āĻ¨ %s: %s\n", āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¨āĻžāĻŽ, strerror(errno));
āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨(ā§¨ā§Ļā§§ā§§);
}
āĻāĻ–āĻ¨ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ•āĻžāĻ›ā§‡ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛, āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¨āĻžāĻŽ āĻāĻŦāĻ‚ āĻāĻ°āĻ° āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚ āĻ†āĻ›ā§‡āĨ¤ āĻāĻ‡ āĻ¸āĻŦ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡
āĻ¤āĻĨā§āĻ¯ āĻ¯ā§‡ āĻ¸ā§āĻŸā§āĻ°ā§‡āĻ¸(1) āĻŽā§āĻĻā§āĻ°āĻŋāĻ¤āĨ¤ āĻ¯ā§‡ āĻāĻŸāĻŋ āĻĒāĻžāĻ¯āĻŧ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻ­āĻžāĻ˛.

āĻ…āĻĨāĻŦāĻž āĻāĻŸāĻž?

āĻ¸ā§€āĻŽāĻžāĻŦāĻĻā§āĻ§āĻ¤āĻž of āĻ­ā§āĻ˛ āĻāĻŦāĻ‚ āĻ¸ā§āĻŸā§āĻ°āĻ°āĻ°
1980 āĻāĻ° āĻĻāĻļāĻ•ā§‡ āĻ˛ā§‡āĻ–āĻ• āĻ¯ā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻŸāĻŋ āĻĻā§‡āĻ–ā§‡āĻ›āĻŋāĻ˛ā§‡āĻ¨ āĻ¤āĻž āĻšāĻ˛ āĻ¯ā§‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻŸāĻŋ āĻ…āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖāĨ¤
"āĻāĻŽāĻ¨ āĻ•ā§‹āĻ¨ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻž āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ" āĻ•āĻŋ "āĻ•ā§‡ āĻŦā§‹āĻāĻžāĻ¯āĻŧ āĻ¨āĻž?āĻ•āĻŋāĻ›ā§" āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ, āĻŦāĻž "āĻœāĻŋāĻ¨āĻŋāĻ¸â€ āĻĢāĻžāĻ‡āĻ˛ āĻ•āĻ°ā§āĻ¨
āĻĻā§āĻ¯ "āĻ•āĻŋāĻ›ā§" āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ?

āĻœāĻ¨ā§āĻ¯ āĻŽā§āĻ¯āĻžāĻ¨ āĻĒā§‡āĻœ āĻ āĻāĻ•āĻŸāĻŋ āĻĻā§āĻ°ā§āĻ¤ āĻšā§‡āĻšāĻžāĻ°āĻž āĻ¸ā§āĻŸā§āĻ°āĻ°āĻ°(3) āĻŦāĻ˛āĻ›ā§‡:
strerror - āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ¨āĻŽā§āĻŦāĻ° āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻ•āĻ°ā§‡ āĻ°āĻŋāĻŸāĻžāĻ°ā§āĻ¨ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚
āĻ­āĻžāĻ˛āĻ­āĻžāĻŦā§‡ āĻ¨ā§‹āĻŸ āĻ•āĻ°ā§āĻ¨: āĻāĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻ•āĻ°āĻ›ā§‡ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻž, āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ¨āĻ¯āĻŧāĨ¤

āĻ…āĻ¨ā§āĻ¯āĻĻāĻŋāĻ•ā§‡, āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻœāĻžāĻ¨ā§‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ•āĻŋ āĻ›āĻŋāĻ˛. āĻāĻ•āĻŸāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻ›āĻŋāĻ˛
āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻ•ā§‹āĻĄ, āĻāĻ•āĻŸāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ…āĻŦāĻ¸ā§āĻĨāĻžāĻ° āĻ•āĻžāĻ°āĻŖā§‡ āĻ¸ā§ƒāĻˇā§āĻŸ, āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻ•ā§‹āĻĄ āĻļāĻžāĻ–āĻžāĻ¯ā§āĻ•ā§āĻ¤ āĻāĻŦāĻ‚ "āĻ¨āĻž" āĻŦāĻ˛ā§‡āĨ¤
āĻāĻ•āĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€-āĻ¸ā§āĻĒā§‡āĻ¸ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻļāĻ°ā§āĻ¤āĻŸāĻŋ āĻŦā§‡āĻ° āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ āĻ­āĻžāĻ˛ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ˛āĻŋāĻ–āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡
āĻŦāĻžāĻ°ā§āĻ¤āĻž?

āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ†āĻ°āĻ“ āĻ—āĻ­ā§€āĻ°ā§‡ āĻ¯āĻžāĻ¯āĻŧāĨ¤ āĻ¸āĻŽāĻ¯āĻŧ āĻšāĻ˛ā§‡ āĻ•āĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻšāĻ¯āĻŧ āĻĒāĻĄāĻŧāĻž(2) āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ
āĻ•āĻ˛, āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§‡ āĻ–ā§‹āĻ˛āĻž(2) āĻ•āĻ˛? āĻāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¯ā§āĻ•ā§āĻ¤ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻŸāĻŋ āĻ¸āĻšāĻœ
āĻ–ā§‹āĻ˛āĻž(2) āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¨āĻžāĻŽ āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻ¤ā§‡, āĻāĻŸāĻŋ āĻ āĻŋāĻ• āĻ¸ā§‡āĻ–āĻžāĻ¨ā§‡āĨ¤ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‡āĻ˛ āĻ¨āĻžāĻŽ āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻ¸āĻ•ā§āĻˇāĻŽ āĻšāĻŦā§‡āĻ¨
āĻāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¯ā§āĻ•ā§āĻ¤ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ¤ā§‡ āĻĒāĻĄāĻŧāĻž(2) āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛, āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¨āĻžāĻŽāĻŸāĻŋ āĻĒāĻžāĻ¸ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡
āĻ•āĻ˛ āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ•ā§‡āĻ° āĻ¨āĻŋāĻšā§‡āĻ° āĻĒāĻĨ, āĻ¸ā§‡āĻ‡āĻ¸āĻžāĻĨā§‡ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻ•āĻžāĻ°ā§€āĨ¤

āĻāĻŦāĻ‚ āĻāĻ–āĻžāĻ¨ā§‡ āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻŸ āĻ¯āĻž grates: āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡āĻ‡ āĻœāĻžāĻ¨ā§‡ āĻ¯ā§‡ āĻĢāĻžāĻ‡āĻ˛āĻŸāĻŋāĻ° āĻ¨āĻžāĻŽ āĻ•āĻŋ
āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻ•āĻžāĻ°ā§€āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¯ā§āĻ•ā§āĻ¤āĨ¤ āĻ•ā§‡āĻ¨ āĻāĻ•āĻœāĻ¨ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽāĻžāĻ°āĻ•ā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ…āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻĄā§‡āĻŸāĻž āĻĒāĻžāĻ¸ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡
āĻ•āĻ˛ āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ• āĻ¨āĻŋāĻšā§‡āĻ° āĻ‰āĻĒāĻžāĻ¯āĻŧ āĻļā§āĻ§ā§ āĻāĻ•āĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻ¯āĻž āĻœāĻžāĻ°āĻŋ āĻ•āĻ°āĻž āĻšāĻŦā§‡ āĻ¨āĻž āĻ‰āĻ¨ā§āĻ¨āĻ¤ āĻ•āĻ°āĻ¤ā§‡? āĻ­āĻŋāĻ¤āĻ°ā§‡
āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻ¤āĻž, āĻ…āĻ¨ā§‡āĻ• āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽāĻžāĻ° āĻŦāĻŋāĻ°āĻ•ā§āĻ¤ āĻ•āĻ°ā§‡ āĻ¨āĻž, āĻāĻŦāĻ‚ āĻāĻ° āĻĢāĻ˛ā§‡ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ—ā§āĻ˛āĻŋ āĻ†āĻ°āĻ“ āĻ–āĻžāĻ°āĻžāĻĒ
āĻāĻŸāĻž.

āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŸāĻŋ āĻ›āĻŋāĻ˛ 1980-āĻāĻ° āĻĻāĻļāĻ•, āĻāĻ•āĻŸāĻŋ PDP11-āĻ, āĻ¸ā§€āĻŽāĻŋāĻ¤ āĻ¸āĻ‚āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻŦāĻ‚ āĻ•ā§‹āĻ¨āĻ“ āĻ­āĻžāĻ— āĻ•āĻ°āĻž āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻ›āĻŋāĻ˛ āĻ¨āĻžāĨ¤ āĻĒā§‡āĻ›āĻ¨ā§‡
āĻ¤āĻžāĻ°āĻĒāĻ°, āĻ‡āĻ‰āĻ¨āĻŋāĻ•ā§āĻ¸ā§‡āĻ° āĻ•ā§‹āĻ¨ āĻ¸ā§āĻŦāĻžāĻĻ āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž / proc āĻāĻŽāĻ¨āĻ•āĻŋ āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ• āĻ†āĻ•āĻžāĻ°ā§‡, āĻāĻŦāĻ‚ lsof(1) āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ
āĻāĻ• āĻĻāĻļāĻ•ā§‡āĻ°āĻ“ āĻŦā§‡āĻļāĻŋ āĻĻā§‚āĻ°ā§‡ āĻ›āĻŋāĻ˛āĨ¤ āĻ¤āĻžāĻ‡ āĻ§āĻžāĻ°āĻŖāĻžāĻŸāĻŋ āĻ…āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻŋāĻ• āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻ¸ā§āĻĨāĻ—āĻŋāĻ¤ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛āĨ¤

āĻ‰āĻšā§āĻšāĻ¤āĻž āĻ…āĻ¨āĻ¨ā§āĻ¤ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ¤āĻž
āĻ•āĻ˛ā§āĻĒāĻ¨āĻž āĻ•āĻ°ā§āĻ¨ āĻ¯ā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻ¸ā§āĻ¤āĻ°ā§‡āĻ° āĻ…āĻ¸ā§€āĻŽ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨āĨ¤ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ•āĻžāĻœā§‡āĻ° āĻŦāĻŋāĻŦāĻ°āĻŖ āĻŦāĻ˛ā§‡ āĻ¯ā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻ•āĻ–āĻ¨āĻ‡ āĻ¨āĻž
āĻšāĻŋāĻ°āĻ•āĻžāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻĻā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ•āĻĨāĻž āĻŦāĻ˛āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻ¤āĻžāĻ°āĻĒāĻ°āĻ“ āĻ•ā§‡āĻ¨, āĻāĻ–āĻ¨ā§‹ āĻŽāĻžāĻ¨ā§āĻˇā§‡āĻ° āĻšāĻžāĻ“āĻ¯āĻŧāĻž-āĻĒāĻžāĻ“āĻ¯āĻŧāĻžāĻ° āĻ§āĻžāĻ°āĻž āĻ…āĻŦā§āĻ¯āĻžāĻšāĻ¤ āĻ†āĻ›ā§‡
āĻ†āĻĒāĻ¨āĻŋ, āĻ¸ā§āĻĨāĻžāĻ¨ā§€āĻ¯āĻŧ āĻ‡āĻ‰āĻ¨āĻŋāĻ•ā§āĻ¸ āĻ—ā§āĻ°ā§, āĻ†āĻ°ā§‡āĻ•āĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻŦā§‹āĻāĻžāĻ¤ā§‡?

āĻ…āĻĻā§āĻ­ā§āĻ¤āĻ­āĻžāĻŦā§‡, 25 āĻŦāĻ›āĻ° āĻĒāĻ°ā§‡, āĻāĻ•āĻŸāĻŋ āĻ¸āĻšāĻœ āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ¸āĻ¤ā§āĻ¤ā§āĻŦā§‡āĻ“, āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖāĻ°ā§‚āĻĒā§‡ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻŋāĻ¤
āĻ¸āĻžāĻŽāĻžā§āĻœāĻ¸ā§āĻ¯āĻ¤āĻž, āĻŦā§‡āĻļāĻŋāĻ°āĻ­āĻžāĻ— āĻ‡āĻ‰āĻ¨āĻŋāĻ•ā§āĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ°āĻž āĻāĻ–āĻ¨āĻ“ "āĻāĻŽāĻ¨ āĻ•ā§‹āĻ¨ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻž āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨ā§‡āĻ‡" āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻĄāĻŋāĻ•ā§‹āĻĄ āĻ•āĻ°āĻŦā§‡āĻ¨ āĻ¤āĻžāĻ° āĻ•ā§‹āĻ¨āĻ“ āĻ§āĻžāĻ°āĻŖāĻž āĻ¨ā§‡āĻ‡,
āĻ…āĻĨāĻŦāĻž āĻ…āĻ¨ā§āĻ¯ āĻ•ā§‹āĻ¨ āĻ°āĻšāĻ¸ā§āĻ¯āĻœāĻ¨āĻ• āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻ¤āĻžāĻ°āĻž āĻĒā§āĻ°āĻ¤āĻŋāĻĻāĻŋāĻ¨ āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻ¯āĻŧāĨ¤ āĻ…āĻĨāĻŦāĻž, āĻ…āĻ¨ā§āĻ¤āĻ¤, āĻ—ā§‹āĻĒāĻ¨ā§€āĻ¯āĻŧ
āĻ¤āĻžāĻĻā§‡āĻ°.

āĻĒā§āĻ°āĻĨāĻŽ āĻ¸ā§āĻ¤āĻ°ā§‡āĻ° āĻĒā§āĻ°āĻ¯ā§āĻ•ā§āĻ¤āĻŋ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ¤āĻžāĻ° āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ—ā§āĻ˛āĻŋ āĻĒāĻžāĻ ā§‹āĻĻā§āĻ§āĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻ¨āĻž āĻšāĻ˛ā§‡ āĻāĻŸāĻŋ āĻ•āĻŋ āĻ­āĻžāĻ˛ āĻšāĻŦā§‡ āĻ¨āĻž?
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ°āĻž āĻ•āĻ˛ āĻ¨āĻž āĻ•āĻ°ā§‡ āĻŦā§āĻāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻāĻŽāĻ¨ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ° āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ—ā§āĻ˛āĻŋ āĻĨāĻžāĻ•āĻ˛ā§‡ āĻ­āĻžāĻ˛ āĻšāĻŦā§‡ āĻ¨āĻž
āĻ•āĻžāĻ°āĻŋāĻ—āĻ°āĻŋ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ¤āĻž?

āĻāĻ‡ āĻĻāĻŋāĻ¨āĻ—ā§āĻ˛āĻŋ / proc āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ā§‡ āĻĄāĻŋāĻ•ā§‹āĻĄ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻ¤āĻĨā§āĻ¯ āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻ•āĻ°āĻ¤ā§‡ āĻ¸āĻ•ā§āĻˇāĻŽ
āĻŦā§‡āĻļāĻŋāĻ°āĻ­āĻžāĻ— āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž, āĻāĻŦāĻ‚ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ•ā§‡ āĻ¤āĻžāĻĻā§‡āĻ° āĻ†āĻ¨ā§āĻŽāĻžāĻ¨āĻŋāĻ• āĻ•āĻžāĻ°āĻŖ āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļ āĻ•āĻ°ā§‡
āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻāĻ•āĻŸāĻŋ āĻ¸ā§€āĻŽāĻŋāĻ¤ āĻ¸āĻ™ā§āĻ—ā§‡ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡ / proc āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨, āĻĻ lsof(1) āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻĒā§‚āĻ°āĻŖ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨
āĻ…āĻ¨ā§‡āĻ• āĻĢāĻžāĻāĻ•āĨ¤

2008 āĻ¸āĻžāĻ˛ā§‡, āĻ…āĻ¨ā§āĻŦāĻžāĻĻā§‡āĻ° āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ā§‡āĻ° āĻĒā§āĻ°āĻŦāĻžāĻš āĻ˛ā§‡āĻ–āĻ•ā§‡āĻ° āĻ•āĻžāĻ›ā§‡ āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻ‡ āĻ˜āĻŸā§‡āĻ›āĻŋāĻ˛āĨ¤ āĻ‡āĻšāĻž āĻ›āĻŋāĻ˛
25 āĻŦāĻ›āĻ°ā§‡āĻ° āĻĒā§āĻ°āĻžāĻ¨ā§‹ āĻ§āĻžāĻ°āĻŖāĻžāĻŸāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻŦāĻ‚ libexplain āĻāĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛āĨ¤

āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻĻā§āĻ¯ āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ


āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋāĻ° āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻĢā§‡āĻ¸ āĻ¸āĻžāĻŽāĻžā§āĻœāĻ¸ā§āĻ¯āĻĒā§‚āĻ°ā§āĻŖ āĻšāĻ“āĻ¯āĻŧāĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°ā§‡, āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ¸āĻŽā§āĻ­āĻŦāĨ¤ āĻāĻ° āĻāĻ•āĻŸāĻŋ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻļā§āĻ°ā§ āĻ•āĻ°āĻž āĻ¯āĻžāĻ•
āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ¸ā§āĻŸā§āĻ°āĻ°āĻ°(3)
āĻ¯āĻĻāĻŋ (āĻĒā§āĻ¨āĻƒāĻ¨āĻžāĻŽāĻ•āĻ°āĻŖ (āĻĒā§āĻ°āĻžāĻ¤āĻ¨_āĻĒāĻĨ, āĻ¨āĻ¤ā§āĻ¨_āĻĒāĻĨ) < 0)
{
fprintf(stderr, "%s %s āĻĒā§āĻ¨āĻƒāĻ¨āĻžāĻŽāĻ•āĻ°āĻŖ āĻ•āĻ°ā§āĻ¨: %s\n", old_path, new_path,
strerror(errno));
āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨(ā§¨ā§Ļā§§ā§§);
}
libexplain āĻāĻ° āĻĒāĻŋāĻ›āĻ¨ā§‡ āĻ§āĻžāĻ°āĻŖāĻž āĻšāĻ˛ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻ•āĻ°āĻž āĻ¸ā§āĻŸā§āĻ°āĻ°āĻ°(3) āĻœāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯ āĻĒā§āĻ°āĻ¤āĻŋ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛,
āĻ¸ā§‡āĻ‡ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻŦāĻŋāĻļā§‡āĻˇāĻ­āĻžāĻŦā§‡ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¯āĻžāĻ¤ā§‡ āĻāĻŸāĻŋ āĻ†āĻ°āĻ“ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡
āĻŦāĻžāĻ°ā§āĻ¤āĻž, āĻ†āĻĒāĻ¨āĻŋ āĻŦāĻŋāĻ­āĻžāĻ—ā§‡āĻ° "āĻ¤ā§āĻ°ā§āĻŸāĻŋ" āĻļāĻŋāĻ°ā§‹āĻ¨āĻžāĻŽā§‡āĻ° āĻ…āĻ§ā§€āĻ¨ā§‡ āĻ¯ā§‡ āĻ¤āĻĨā§āĻ¯ āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻšā§āĻ›ā§‡āĻ¨ āĻ¤āĻžāĻ° āĻŦā§‡āĻļāĻŋāĻ°āĻ­āĻžāĻ—āĻ‡ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ā§ˇ
2 āĻāĻŦāĻ‚ 3 āĻāĻ• āĻĒā§ƒāĻˇā§āĻ āĻžāĻ—ā§āĻ˛āĻŋ, āĻĒā§āĻ°āĻ•ā§ƒāĻ¤ āĻ…āĻŦāĻ¸ā§āĻĨāĻž, āĻĒā§āĻ°āĻ•ā§ƒāĻ¤ āĻ¯ā§āĻ•ā§āĻ¤āĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ¤āĻĨā§āĻ¯ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻĒāĻ°āĻŋāĻĒā§‚āĻ°āĻ•
āĻŽāĻžāĻ¨, āĻāĻŦāĻ‚ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ¸ā§€āĻŽāĻžāĨ¤

āĻ¸āĻžāĻ°ā§āĻœāĻžāĻ°āĻŋāĻ° āĻ¸āĻšāĻœ āĻ•ā§‡āĻ¸
āĻ¸āĻžāĻ°ā§āĻœāĻžāĻ°āĻŋāĻ° āĻ¸ā§āĻŸā§āĻ°āĻ°āĻ°(3) āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨:
āĻ¯āĻĻāĻŋ (āĻĒā§āĻ¨āĻƒāĻ¨āĻžāĻŽāĻ•āĻ°āĻŖ (āĻĒā§āĻ°āĻžāĻ¤āĻ¨_āĻĒāĻĨ, āĻ¨āĻ¤ā§āĻ¨_āĻĒāĻĨ) < 0)
{
fprintf(stderr, "%s\n", āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_āĻĒā§āĻ¨āĻƒāĻ¨āĻžāĻŽāĻ•āĻ°āĻŖ(āĻĒā§āĻ°āĻžāĻ¨ā§‹_āĻĒāĻĨ, āĻ¨āĻ¤ā§āĻ¨_āĻĒāĻĨ));
āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨(ā§¨ā§Ļā§§ā§§);
}

āĻ¸āĻžāĻ°ā§āĻœāĻžāĻ°āĻŋāĻ° āĻāĻ°āĻ¨ā§‹ āĻ•ā§‡āĻ¸
āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸ā§āĻĒāĻˇā§āĻŸ āĻĒāĻžāĻ¸ āĻ•āĻ°āĻž āĻ¸āĻŽā§āĻ­āĻŦ āĻ­ā§āĻ˛(3) āĻŽāĻžāĻ¨, āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻĒā§āĻ°āĻĨāĻŽā§‡ āĻ•āĻŋāĻ›ā§ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡
āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ•āĻ°āĻŖ āĻ¯ā§‡ āĻŦāĻŋāĻ°āĻ•ā§āĻ¤ āĻšāĻŦā§‡ āĻ­ā§āĻ˛, āĻ¯ā§‡āĻŽāĻ¨ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ°:
āĻ¯āĻĻāĻŋ (āĻ¨āĻžāĻŽ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°ā§āĻ¨(āĻĒā§āĻ°āĻžāĻ¤āĻ¨_āĻĒāĻĨ, āĻ¨āĻ¤ā§āĻ¨_āĻĒāĻĨ < 0))
{
int old_errno = errno;
...āĻ•ā§‹āĻĄ āĻ¯ā§‡ āĻŦāĻŋāĻ°āĻ•ā§āĻ¤ āĻ•āĻ°ā§‡ āĻ­ā§āĻ˛...
fprintf(stderr, "%s\n", āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_errno_rename(old_errno,
āĻĒā§āĻ°āĻžāĻ¨ā§‹_āĻĒāĻĨ, āĻ¨āĻ¤ā§āĻ¨_āĻĒāĻĨ));
āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨(ā§¨ā§Ļā§§ā§§);
}

āĻ¸āĻžāĻ°ā§āĻœāĻžāĻ°āĻŋāĻ° āĻŽāĻžāĻ˛ā§āĻŸāĻŋ āĻĨā§āĻ°ā§‡āĻĄ āĻŽāĻžāĻŽāĻ˛āĻž
āĻ•āĻŋāĻ›ā§ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨ āĻŦāĻšā§-āĻĨā§āĻ°ā§‡āĻĄā§‡āĻĄ, āĻāĻŦāĻ‚ āĻāĻ‡āĻ­āĻžāĻŦā§‡ libexplain āĻāĻ° āĻ…āĻ­ā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§€āĻŖ āĻ­āĻžāĻ— āĻ•āĻ°āĻ¤ā§‡ āĻ…āĻ•ā§āĻˇāĻŽ
āĻŦāĻžāĻĢāĻžāĻ° āĻ†āĻĒāĻ¨āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ¨āĻŋāĻœāĻ¸ā§āĻŦ āĻŦāĻžāĻĢāĻžāĻ° āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨
āĻ¯āĻĻāĻŋ (āĻ†āĻ¨āĻ˛āĻŋāĻ™ā§āĻ•(āĻĒāĻĨā§‡āĻ° āĻ¨āĻžāĻŽ))
{
char āĻŦāĻžāĻ°ā§āĻ¤āĻž[3000];
āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_āĻŦāĻžāĻ°ā§āĻ¤āĻž_āĻ†āĻ¨āĻ˛āĻŋāĻ™ā§āĻ•(āĻŦāĻžāĻ°ā§āĻ¤āĻž, āĻ†āĻ•āĻžāĻ°(āĻŦāĻžāĻ°ā§āĻ¤āĻž), āĻĒāĻĨā§‡āĻ° āĻ¨āĻžāĻŽ);
error_dialog(āĻŦāĻžāĻ°ā§āĻ¤āĻž);
āĻ°āĻŋāĻŸāĻžāĻ°ā§āĻ¨ -1;
}
āĻāĻŦāĻ‚ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖāĻ¤āĻž āĻœāĻ¨ā§āĻ¯, āĻ‰āĻ­āĻ¯āĻŧ āĻ­ā§āĻ˛(3) āĻāĻŦāĻ‚ āĻĨā§āĻ°ā§‡āĻĄ-āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ:
ssize_t nbytes = read(fd, data, sizeof(data));
āĻ¯āĻĻāĻŋ (nbytes <0)
{
char āĻŦāĻžāĻ°ā§āĻ¤āĻž[3000];
int old_errno = errno;
...āĻ­ā§āĻ˛ āĻ†āĻ°ā§‹āĻ—ā§āĻ¯...
āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_āĻŦāĻžāĻ°ā§āĻ¤āĻž_āĻāĻ°āĻ¨ā§‹_āĻ°āĻŋāĻĄ(āĻŦāĻžāĻ°ā§āĻ¤āĻž, āĻ†āĻ•āĻžāĻ°(āĻŦāĻžāĻ°ā§āĻ¤āĻž),
old_erno, fd, data, sizeof(data));
error_dialog(āĻŦāĻžāĻ°ā§āĻ¤āĻž);
āĻ°āĻŋāĻŸāĻžāĻ°ā§āĻ¨ -1;
}

āĻāĻ‡ āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻšāĻ¯āĻŧ strerror_r(3), āĻāĻŸāĻŋ āĻ†āĻ›ā§‡ āĻāĻŽāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĨ¤

āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻĢā§‡āĻ¸ āĻšāĻŋāĻ¨āĻŋ
āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻœāĻ¨āĻ• āĻĢāĻžāĻ‚āĻļāĻ¨ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻĢāĻžāĻ‚āĻļāĻ¨āĻ—ā§āĻ˛āĻŋāĻ° āĻāĻ•āĻŸāĻŋ āĻ¸ā§‡āĻŸ, āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽāĻžāĻ°āĻĻā§‡āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ°ā§‹āĻšāĻŋāĻ¤ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯
libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ, āĻ˛ā§‡āĻ–āĻ•ā§‡āĻ° āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻŦā§‡āĻļāĻŋ āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ libexplain āĻĢāĻžāĻ‚āĻļāĻ¨ āĻšāĻ¤ā§‡ āĻĻā§‡āĻ–āĻž āĻ¯āĻžāĻšā§āĻ›ā§‡
āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻ˛āĻžāĻ‡āĻ¨ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ:
int fd = āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_āĻ•ā§āĻ°āĻŋāĻ¯āĻŧā§‡āĻŸ_āĻ…āĻ°_āĻĄāĻžāĻ‡(āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¨āĻžāĻŽ, 0666);
āĻāĻ‡ āĻĢāĻžāĻ‚āĻļāĻ¨āĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻĢāĻžāĻ‡āĻ˛ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°ā§‡āĨ¤ āĻ¯āĻĻāĻŋ āĻāĻŸāĻŋ āĻ¨āĻž āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡, āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĒā§āĻ°āĻŋāĻ¨ā§āĻŸ āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚
EXIT_FAILURE āĻĻāĻŋāĻ¯āĻŧā§‡ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻ•āĻ°ā§‡āĨ¤ āĻ¯āĻĻāĻŋ āĻ•ā§‹āĻ¨ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ¨āĻž āĻĨāĻžāĻ•ā§‡, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻāĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻ•āĻžāĻ°ā§€ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻ•āĻ°ā§‡āĨ¤

āĻāĻ•āĻŸāĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•āĻŋāĻ¤ āĻĢāĻžāĻ‚āĻļāĻ¨:
int fd = āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_āĻ•ā§āĻ°āĻŋāĻ¯āĻŧā§‡āĻŸ_āĻ…āĻ¨_āĻāĻ°āĻ° (āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¨āĻžāĻŽ, 0666);
āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻžāĻ° āĻ‰āĻĒāĻ° āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻŸāĻŋ āĻŽā§āĻĻā§āĻ°āĻŖ āĻ•āĻ°āĻŦā§‡, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻŽā§‚āĻ˛ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛āĻ“ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻ•āĻ°āĻŦā§‡, āĻāĻŦāĻ‚
āĻ­ā§āĻ˛(3) unmolested, āĻĒāĻžāĻļāĻžāĻĒāĻžāĻļāĻŋ.

āĻ¸āĻŦ āĻĻā§āĻ¯ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻ•āĻ˛
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ­āĻžāĻŦā§‡, āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ā§‡āĻ° āĻ¨āĻŋāĻœāĻ¸ā§āĻŦ āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻĢāĻžāĻ‡āĻ˛ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡
#āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤āĻ¨āĻžāĻŽ.h>
āĻ¯ā§‡āĻŸāĻŋ āĻ›āĻ¯āĻŧāĻŸāĻŋ āĻĢāĻžāĻ‚āĻļāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĢāĻžāĻ‚āĻļāĻ¨ āĻĒā§āĻ°ā§‹āĻŸā§‹āĻŸāĻžāĻ‡āĻĒ āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ•āĻ°ā§‡:

¡ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ•āĻ°āĻž_āĻ¨āĻžāĻŽ,

āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻžāĻ¨āĻžāĻŽ,

āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_āĻŦāĻžāĻ°ā§āĻ¤āĻž_āĻ¨āĻžāĻŽ,

¡ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_āĻŦāĻžāĻ°ā§āĻ¤āĻž_āĻāĻ°āĻ¨ā§‹_āĻ¨āĻžāĻŽ,

¡ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ•āĻ°āĻž_āĻ¨āĻžāĻŽ_āĻŦāĻž_āĻŽāĻ°āĻŋ āĻāĻŦāĻ‚

¡ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ•āĻ°āĻž_āĻ¨āĻžāĻŽ_āĻ…āĻ¨_āĻ¤ā§āĻ°ā§āĻŸāĻŋāĨ¤

āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻĢāĻžāĻ‚āĻļāĻ¨ āĻĒā§āĻ°ā§‹āĻŸā§‹āĻŸāĻžāĻ‡āĻĒ āĻĄāĻ•ā§āĻ¸āĻŋāĻœā§‡āĻ¨ āĻĄāĻ•ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāĻ¨, āĻāĻŦāĻ‚ āĻāĻ‡ āĻĄāĻ•ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāĻ¨ āĻ†āĻ›ā§‡ is āĻ¨āĻž āĻ›āĻŋāĻ¨āĻ¤āĻžāĻ‡
āĻ¯āĻ–āĻ¨ āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻĢāĻžāĻ‡āĻ˛ āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤

āĻ¸āĻžāĻ°ā§āĻœāĻžāĻ°āĻŋāĻ° āĻ…āĻĒā§‡āĻ•ā§āĻˇāĻž āĻ•āĻ°ā§āĻ¨(2) āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ā§‡āĻ° (āĻāĻŦāĻ‚ āĻŦāĻ¨ā§āĻ§ā§āĻĻā§‡āĻ°) āĻ•āĻŋāĻ›ā§ āĻ…āĻ¤āĻŋāĻ°āĻŋāĻ•ā§āĻ¤ āĻ°ā§‚āĻĒ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¯āĻž āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻžāĻ•ā§‡ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ•āĻ°ā§‡
āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻ…āĻŦāĻ¸ā§āĻĨāĻž āĻšāĻ¤ā§‡ āĻ¯āĻž EXIT_SUCCESS āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻ‡ āĻĒā§āĻ°āĻ¯ā§‹āĻœā§āĻ¯ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ(3) āĻāĻŦāĻ‚ āĻŦāĻ¨ā§āĻ§(3) āĻšāĻŋāĻ¸āĻžāĻŦā§‡
āĻ­āĻžāĻ˛āĨ¤

āĻ•āĻ­āĻžāĻ°ā§‡āĻœā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ 221āĻŸāĻŋ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻāĻŦāĻ‚ 547āĻŸāĻŋ ioctl āĻ…āĻ¨ā§āĻ°ā§‹āĻ§āĨ¤ āĻ†āĻ°ā§‹ āĻ…āĻ¨ā§‡āĻ• āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ†āĻ›ā§‡
āĻ•āĻ˛ āĻāĻ–āĻ¨āĻ“ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻ•āĻ°āĻž. āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻ¯ā§‡ āĻĢāĻŋāĻ°ā§‡ āĻ¨āĻž, āĻ¯ā§‡āĻŽāĻ¨ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨(2), āĻ‰āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻ¨ā§‡āĻ‡
āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋāĻ¤ā§‡, āĻāĻŦāĻ‚ āĻ•āĻ–āĻ¨āĻ‡ āĻšāĻŦā§‡ āĻ¨āĻžāĨ¤ āĻĻā§āĻ¯ Exec āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻĒāĻ°āĻŋāĻŦāĻžāĻ° āĻšāĻ¯āĻŧ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤, āĻ•āĻžāĻ°āĻŖ
āĻāĻ•āĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻšāĻ˛ā§‡ āĻ¤āĻžāĻ°āĻž āĻĢāĻŋāĻ°ā§‡ āĻ†āĻ¸ā§‡āĨ¤

āĻŦāĻŋāĻĄāĻŧāĻžāĻ˛
āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸāĻŋāĻ‚ āĻ¸āĻš āĻāĻ•āĻŸāĻŋ āĻ…āĻ¨ā§āĻŽāĻžāĻ¨āĻŽā§‚āĻ˛āĻ• "āĻŦāĻŋāĻĄāĻŧāĻžāĻ˛" āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ āĻĻā§‡āĻ–āĻ¤ā§‡ āĻāĻŸāĻŋāĻ° āĻŽāĻ¤ā§‹ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡,
libexplain āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡āĨ¤
#āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤
# āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤
#āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤
āĻāĻ•āĻŸāĻŋ libexplain āĻœāĻ¨ā§āĻ¯ āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻ†āĻ›ā§‡, āĻĒā§āĻ˛āĻžāĻ¸ āĻ¸ā§āĻŦāĻžāĻ­āĻžāĻŦāĻŋāĻ• āĻ¸āĻ¨ā§āĻĻā§‡āĻšāĻ­āĻžāĻœāĻ¨. (āĻ¯āĻĻāĻŋ āĻ†āĻĒāĻ¨āĻŋ āĻ•āĻŽāĻžāĻ¤ā§‡ āĻšāĻžāĻ¨
āĻĒā§āĻ°āĻŋāĻĒā§āĻ°āĻ¸ā§‡āĻ¸āĻ° āĻ˛ā§‹āĻĄ, āĻ†āĻĒāĻ¨āĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨āĻ¨āĻžāĻŽ.h> āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤āĨ¤)
āĻ¸ā§āĻĨāĻŋāĻ° āĻļā§‚āĻ¨ā§āĻ¯
āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž (āĻĢāĻžāĻ‡āĻ˛ *āĻāĻĢāĻĒāĻŋ)
{
āĻœāĻ¨ā§āĻ¯ (;;)
{
āĻšāĻžāĻ° āĻŦāĻžāĻĢāĻžāĻ° [4096];
size_t n = āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_fread_or_die(āĻŦāĻžāĻĢāĻžāĻ°, 1, sizeof(āĻŦāĻžāĻĢāĻžāĻ°), fp);
āĻ¯āĻĻāĻŋ (! n)
āĻŦāĻŋāĻ°āĻ¤āĻŋ;
āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ•āĻ°ā§āĻ¨_fwrite_or_die(āĻŦāĻžāĻĢāĻžāĻ°, 1, n, stdout);
}
}
āĻ¸āĻžāĻ°ā§āĻœāĻžāĻ°āĻŋāĻ° āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻĢāĻžāĻ‚āĻļāĻ¨ āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻ†āĻ‰āĻŸāĻĒā§āĻŸā§‡ āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‡āĻ˛ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻŽ āĻ•āĻĒāĻŋ āĻ•āĻ°ā§‡āĨ¤ āĻāĻ•āĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ˜āĻŸāĻ¤ā§‡ āĻšāĻŦā§‡
āĻĒāĻĄāĻŧāĻž āĻŦāĻž āĻ˛ā§‡āĻ–āĻžāĻ° āĻœāĻ¨ā§āĻ¯, āĻāĻŸāĻŋ āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ (āĻāĻŦāĻ‚ āĻĒāĻžāĻĨāĻ¨āĻžāĻŽāĻŸāĻŋ āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻž āĻšāĻŦā§‡
āĻ¤ā§āĻ°ā§āĻŸāĻŋ) āĻāĻŦāĻ‚ āĻ•āĻŽāĻžāĻ¨ā§āĻĄāĻŸāĻŋ EXIT_FAILURE āĻāĻ° āĻ¸āĻžāĻĨā§‡ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻ•āĻ°ā§‡āĨ¤ āĻ†āĻŽāĻ°āĻž āĻāĻŽāĻ¨āĻ•āĻŋ āĻŸā§āĻ°ā§āĻ¯āĻžāĻ•āĻŋāĻ‚ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻšāĻŋāĻ¨ā§āĻ¤āĻž āĻ¨āĻž
pathnames, āĻ…āĻĨāĻŦāĻž āĻ•āĻ˛ āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ•ā§‡āĻ° āĻ¨āĻŋāĻšā§‡ āĻ¤āĻžāĻĻā§‡āĻ° āĻĒāĻžāĻ¸.
āĻ•ā§‹āĻ¨ int
āĻĒā§āĻ°āĻ§āĻžāĻ¨ (int argc, char **argv)
{
āĻœāĻ¨ā§āĻ¯ (;;)
{
int c = getopt(argc, argv, "o:");
āĻ¯āĻĻāĻŋ (c == EOF)
āĻŦāĻŋāĻ°āĻ¤āĻŋ;
āĻ¸ā§āĻ‡āĻš (āĻ—)
{
āĻ•ā§‡āĻ¸ 'āĻ“':
āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_āĻĢā§āĻ°āĻŋāĻ“āĻĒā§‡āĻ¨_āĻ…āĻ°_āĻĄāĻžāĻ‡(āĻ…āĻĒāĻŸāĻžāĻ°ā§āĻ—, "āĻĄāĻŦā§āĻ˛āĻŋāĻ‰", stdout);
āĻŦāĻŋāĻ°āĻ¤āĻŋ;
āĻāĻ‡ āĻ•ā§‹āĻĄā§‡āĻ° āĻŽāĻœāĻžāĻ° āĻ…āĻ‚āĻļ āĻšāĻ˛ libexplain āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¸ā§āĻĻā§āĻ§ āĻĻā§āĻ¯ āĻĒāĻĨā§‡āĻ° āĻ¨āĻžāĻŽ āĻāĻŽāĻ¨ āĻ•āĻŋ
āĻ¯āĻĻāĻŋ āĻ¤ā§āĻŽāĻŋ āĻ¨āĻž āĻāĻ–āĻžāĻ¨ā§‡ āĻ¯ā§‡āĻŽāĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¸ā§āĻĒāĻˇā§āĻŸāĻ­āĻžāĻŦā§‡ stdout āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻ–ā§āĻ˛ā§āĻ¨āĨ¤ āĻ†āĻŽāĻ°āĻž āĻšāĻŋāĻ¨ā§āĻ¤āĻžāĻ“ āĻ•āĻ°āĻŋ āĻ¨āĻž
āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¨āĻžāĻŽ āĻŸā§āĻ°ā§āĻ¯āĻžāĻ•āĻŋāĻ‚āĨ¤
āĻĄāĻŋāĻĢāĻ˛ā§āĻŸ:
fprintf(stderr, "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°: %ss [ -o ] ...\n",
argv[0]);
āĻĢā§‡āĻ°āĻ¤ EXIT_FAILURE;
}
}
āĻ¯āĻĻāĻŋ (āĻ…āĻĒāĻŸāĻŋāĻ¨ā§āĻĄ == argc)
āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž(stdin);
āĻ†āĻ°
{
āĻ¯āĻ–āĻ¨ (āĻ…āĻĒāĻŸāĻŋāĻ¨ā§āĻĄ < argc)
{
āĻĢāĻžāĻ‡āĻ˛ *fp = āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_āĻĢā§‹āĻĒā§‡āĻ¨_āĻ…āĻ°_āĻĄāĻŋ(āĻ†āĻ°ā§āĻ—āĻ­āĻŋ[āĻ…āĻĒāĻŸāĻŋāĻ¨ā§āĻĄ]++, "āĻ†āĻ°");
āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž(fp);
āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_fclose_or_die(fp);
}
}
āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻ†āĻ‰āĻŸāĻĒā§āĻŸ āĻĒāĻ°ā§‹āĻ•ā§āĻˇāĻ­āĻžāĻŦā§‡ āĻŦāĻ¨ā§āĻ§ āĻ•āĻ°āĻž āĻšāĻŦā§‡, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ•āĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ āĻšāĻ¤ā§‡ āĻ…āĻ¨ā§‡āĻ• āĻĻā§‡āĻ°āĻŋ āĻšāĻŦā§‡
āĻœāĻžāĻ°āĻŋ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¤āĻžāĻ‡ āĻ†āĻŽāĻ°āĻž āĻāĻ–āĻžāĻ¨ā§‡ āĻ¤āĻž āĻ•āĻ°āĻŋ, āĻ¯āĻĻāĻŋ āĻŦāĻžāĻĢāĻžāĻ° āĻ•āĻ°āĻž I/O āĻāĻ–āĻ¨āĻ“ āĻ•āĻŋāĻ›ā§ āĻ¨āĻž āĻ˛āĻŋāĻ–ā§‡ āĻĨāĻžāĻ•ā§‡, āĻāĻŦāĻ‚
āĻāĻ•āĻŸāĻŋ ENOSPC āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻž āĻ•āĻŋāĻ›ā§ āĻ†āĻ›ā§‡āĨ¤
āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_āĻĢā§āĻ˛āĻžāĻļ_āĻ…āĻ°_āĻĄāĻžāĻ‡(stdout);
āĻĢā§‡āĻ°āĻ¤ EXIT_SUCCESS;
}
āĻāĻ–āĻžāĻ¨ā§‡āĻ‡ āĻļā§‡āĻˇ. āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸāĻŋāĻ‚, āĻĒāĻ°āĻŋāĻˇā§āĻ•āĻžāĻ° āĻ•ā§‹āĻĄ.

āĻŽāĻ°āĻŋāĻšāĻž āĻāĻ° āĻ¸ā§āĻ•ā§‡āĻ˛ of āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻĢā§‡āĻ¸ āĻ§āĻžāĻ°ā§āĻŽāĻŋāĻ•āĻ¤āĻž
āĻ†āĻĒāĻ¨āĻžāĻ°āĻž āĻ¯āĻžāĻ°āĻž āĻāĻŸāĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻĒāĻ°āĻŋāĻšāĻŋāĻ¤ āĻ¨āĻ¨ āĻ¤āĻžāĻĻā§‡āĻ° āĻœāĻ¨ā§āĻ¯, āĻ°āĻžāĻ¸ā§āĻŸāĻŋ āĻ°āĻžāĻ¸ā§‡āĻ˛ā§‡āĻ° "āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻ†āĻŽāĻŋ āĻāĻŸāĻŋāĻ•ā§‡ āĻ…āĻĒāĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻ•āĻ āĻŋāĻ¨ āĻ•āĻ°āĻŋ?"
API āĻĄāĻŋāĻœāĻžāĻ‡āĻ¨āĻžāĻ°āĻĻā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§ƒāĻˇā§āĻ āĻžāĻŸāĻŋ āĻ…āĻŦāĻļā§āĻ¯āĻ‡ āĻĒāĻĄāĻŧāĻž āĻ‰āĻšāĻŋāĻ¤āĨ¤
http://ozlabs.org/~rusty/index.cgi/tech/2008‐03-30.html

10. āĻāĻŸāĻž āĻ…āĻ¸āĻŽā§āĻ­āĻŦ āĻĨā§‡āĻ•ā§‡ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ­ā§āĻ˛āĨ¤

āĻ˛āĻ•ā§āĻˇā§āĻ¯āĻ—ā§āĻ˛āĻŋ āĻ‰āĻšā§āĻš, āĻ‰āĻšā§āĻšāĻžāĻ­āĻŋāĻ˛āĻžāĻˇā§€āĻ­āĻžāĻŦā§‡ āĻ‰āĻšā§āĻš āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻž āĻĻāĻ°āĻ•āĻžāĻ°, āĻĒāĻžāĻ›ā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻ¸ā§‡āĻ—ā§āĻ˛āĻŋ āĻ…āĻ°ā§āĻœāĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ āĻāĻŦāĻ‚ āĻŽāĻ¨ā§‡ āĻ•āĻ°ā§‡āĻ¨ āĻ¯ā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻ†āĻ›ā§‡āĻ¨
āĻ†āĻĒāĻ¨āĻŋ āĻ¨āĻž āĻ¯āĻ–āĻ¨ āĻļā§‡āĻˇ.

libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻŦā§‹āĻ—āĻžāĻ¸ āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸāĻžāĻ° āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ…āĻ¨ā§‡āĻ• āĻœāĻžāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻŸāĻžāĻ° āĻ¸āĻ¨āĻžāĻ•ā§āĻ¤ āĻ•āĻ°ā§‡,
āĻāĻŦāĻ‚ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻ•āĻ āĻŋāĻ¨ āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ¤ā§‡āĻ“ āĻ¸ā§‡āĻ—āĻĢāĻ˛ā§āĻŸ āĻāĻĄāĻŧāĻžāĻ¤ā§‡ āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°ā§‡āĨ¤

libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻĨā§āĻ°ā§‡āĻĄ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻšāĻ¤ā§‡ āĻĄāĻŋāĻœāĻžāĻ‡āĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡. āĻ†āĻ°ā§‹ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ-āĻŦāĻŋāĻļā§āĻŦ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ¸āĻŽā§āĻ­āĻŦāĻ¤ āĻšāĻŦā§‡
āĻāĻ‡ āĻ‰āĻ¨ā§āĻ¨āĻ¤ āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¸ā§āĻĨāĻžāĻ¨ āĻĒā§āĻ°āĻ•āĻžāĻļ.

āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻŦāĻĄāĻŧ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻšāĻ˛ āĻĒā§āĻ°āĻ•ā§ƒāĻ¤ āĻĢāĻžāĻ‚āĻļāĻ¨ā§‡āĻ° āĻ¨āĻžāĻŽ āĻ¨āĻŋāĻœā§‡āĻ°āĻžāĻ‡āĨ¤ āĻ•āĻžāĻ°āĻŖ āĻ¸āĻŋ āĻ¨ā§‡āĻ‡
āĻ¨āĻžāĻŽ-āĻ¸ā§āĻĒā§‡āĻ¸, libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻāĻ•āĻŸāĻŋ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_ āĻ¨āĻžāĻŽ āĻ‰āĻĒāĻ¸āĻ°ā§āĻ— āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡āĨ¤ āĻāĻ‡ āĻšāĻ˛
āĻĒā§āĻ°āĻ¤ā§€āĻ• āĻĻā§āĻŦāĻ¨ā§āĻĻā§āĻŦ āĻāĻĄāĻŧāĻžāĻ¤ā§‡ āĻāĻ•āĻŸāĻŋ āĻ›āĻĻā§āĻŽ-āĻ¨āĻžāĻŽ-āĻ¸ā§āĻĒā§‡āĻ¸ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻžāĻ° āĻāĻ¤āĻŋāĻšā§āĻ¯āĻ—āĻ¤ āĻ‰āĻĒāĻžāĻ¯āĻŧāĨ¤
āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻāĻ° āĻĢāĻ˛ā§‡ āĻ•āĻŋāĻ›ā§ āĻ…āĻĒā§āĻ°āĻžāĻ•ā§ƒāĻ¤-āĻļāĻŦā§āĻĻāĻ¯ā§āĻ•ā§āĻ¤ āĻ¨āĻžāĻŽ āĻšāĻ¯āĻŧāĨ¤

9. āĻ¸āĻžāĻ°ā§āĻœāĻžāĻ°āĻŋāĻ° āĻ¸āĻ‚āĻ•āĻ˛āĻ¨āĻ•āĻžāĻ°ā§€ or linker āĻ¨āĻž āĻ•āĻ°āĻŦā§‡ āĻ¨āĻž āĻĻāĻŋāĻ¨ āĻ†āĻĒāĻ¨āĻŋ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž it āĻ­ā§āĻ˛āĨ¤

āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ­ā§āĻ˛ āĻšāĻ˛ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_āĻ“āĻĒā§‡āĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_āĻ“āĻĒā§‡āĻ¨_āĻ…āĻ°_āĻĄāĻžāĻ‡ āĻ‰āĻĻā§āĻĻā§‡āĻļā§āĻ¯ āĻ›āĻŋāĻ˛āĨ¤
āĻ¸ā§ŒāĻ­āĻžāĻ—ā§āĻ¯āĻŦāĻļāĻ¤, āĻ•āĻŽā§āĻĒāĻžāĻ‡āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻ‡ āĻāĻ‡ āĻ¸āĻŽāĻ¯āĻŧā§‡ āĻāĻ•āĻŸāĻŋ āĻŸāĻžāĻ‡āĻĒ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻœāĻžāĻ°āĻŋ āĻ•āĻ°āĻŦā§‡ (āĻ¯ā§‡āĻŽāĻ¨ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¨āĻž
const char * rvalue āĻĨā§‡āĻ•ā§‡ āĻāĻ•āĻŸāĻŋ int lvalue)āĨ¤

8. āĻ¸āĻžāĻ°ā§āĻœāĻžāĻ°āĻŋāĻ° āĻ¸āĻ‚āĻ•āĻ˛āĻ¨āĻ•āĻžāĻ°ā§€ āĻ‡āĻšā§āĻ›āĻž āĻ¸āĻ¤āĻ°ā§āĻ• if āĻ†āĻĒāĻ¨āĻŋ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž it āĻ­ā§āĻ˛āĨ¤

āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_āĻĒā§āĻ¨āĻƒāĻ¨āĻžāĻŽ_āĻ…āĻ°_āĻĄāĻžāĻ‡ āĻāĻ° āĻ‰āĻĻā§āĻĻā§‡āĻļā§āĻ¯ā§‡ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ¯āĻĻāĻŋ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_āĻ°āĻŋāĻ¨ā§‡āĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻāĻŸāĻŋ āĻ…āĻ¨ā§āĻ¯ āĻ•āĻžāĻ°āĻŖ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡
āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž GCC āĻāĻ° āĻāĻ•āĻŸāĻŋ āĻĻāĻ°āĻ•āĻžāĻ°ā§€ warn_unused_result āĻĢāĻžāĻ‚āĻļāĻ¨ āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯ āĻāĻŦāĻ‚ libexplain āĻ†āĻ›ā§‡
āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻāĻŸāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻžāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻ‚āĻ¯ā§āĻ•ā§āĻ¤ āĻ•āĻ°ā§‡_āĻ¨āĻžāĻŽ āĻĢāĻžāĻ‚āĻļāĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ¤āĻ°ā§āĻ•āĻ¤āĻž āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻ¤ā§‡ āĻ•āĻ˛ āĻ¯āĻ–āĻ¨ āĻ†āĻĒāĻ¨āĻŋ
āĻāĻ‡ āĻ­ā§āĻ˛ āĻ•āĻ°āĻž āĻ¸āĻ™ā§āĻ—ā§‡ āĻāĻ‡ āĻāĻ•āĻ¤ā§āĻ°āĻŋāĻ¤ āĻœāĻŋāĻ¸āĻŋāĻ¸āĻŋ -āĻ­ā§āĻ˛ āĻāĻŸāĻŋāĻ•ā§‡ āĻ˛ā§‡āĻ­ā§‡āĻ˛ 9 āĻ¨ā§‡āĻ•āĻŋāĻ¤ā§‡ āĻ‰āĻ¨ā§āĻ¨ā§€āĻ¤ āĻ•āĻ°āĻ¤ā§‡āĨ¤

7. āĻ¸āĻžāĻ°ā§āĻœāĻžāĻ°āĻŋāĻ° āĻ¸ā§āĻ¸ā§āĻĒāĻˇā§āĻŸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° is (āĻ¸āĻŽā§āĻ­āĻŦāĻ¤) āĻĻā§āĻ¯ āĻ āĻŋāĻ• āĻāĻ•.

āĻĢāĻžāĻ‚āĻļāĻ¨ā§‡āĻ° āĻ¨āĻžāĻŽāĻ—ā§āĻ˛āĻŋ āĻ¤āĻžāĻĻā§‡āĻ° āĻ…āĻ°ā§āĻĨ āĻŦā§‹āĻāĻžāĻ¤ā§‡ āĻŦā§‡āĻ›ā§‡ āĻ¨ā§‡āĻ“āĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¤āĻŦā§‡ āĻāĻŸāĻŋ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻ¨āĻ¯āĻŧ
āĻ¸āĻĢāĻ˛ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ_āĻ¨āĻžāĻŽ_āĻŦāĻž_āĻŽāĻ°āĻŋ āĻāĻŦāĻ‚ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ•āĻ°ā§āĻ¨_āĻ¨āĻžāĻŽ_āĻ…āĻ¨_āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŽā§‹āĻŸāĻžāĻŽā§āĻŸāĻŋ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻŽā§‚āĻ˛āĻ•,
āĻ•āĻŽ āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻĨā§āĻ°ā§‡āĻĄ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻ­ā§‡āĻ°āĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĄāĻŋāĻ•ā§‹āĻĄ āĻ•āĻ°āĻž āĻ•āĻ āĻŋāĻ¨āĨ¤ āĻĢāĻžāĻ‚āĻļāĻ¨ āĻĒā§āĻ°ā§‹āĻŸā§‹āĻŸāĻžāĻ‡āĻĒ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯
āĻŦā§‹āĻāĻžāĻ° āĻĻāĻŋāĻ•ā§‡ āĻ•āĻŽā§āĻĒāĻžāĻ‡āĻ˛āĻžāĻ°, āĻāĻŦāĻ‚ āĻšā§‡āĻĄāĻžāĻ° āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻĄāĻ•ā§āĻ¸āĻŋāĻœā§‡āĻ¨ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ•ā§‡ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻ•āĻ°ā§‡
āĻŦā§‹āĻāĻžāĻ° āĻĻāĻŋāĻ•ā§‡āĨ¤

6. āĻ¸āĻžāĻ°ā§āĻœāĻžāĻ°āĻŋāĻ° āĻ¨āĻžāĻŽ āĻŦāĻ˛ā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻĨā§‡āĻ•ā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻŸāĻž.

āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻĒāĻĄāĻŧāĻž āĻŦāĻŋāĻļā§‡āĻˇāĻ­āĻžāĻŦā§‡ āĻ—ā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ_āĻ¨āĻžāĻŽ"āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ•āĻ°ā§āĻ¨" āĻšāĻŋāĻ¸āĻžāĻŦā§‡ _or_dieāĻ¨āĻžāĻŽ āĻ…āĻĨāĻŦāĻž āĻŽāĻ°)".
āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻŽāĻžā§āĻœāĻ¸ā§āĻ¯āĻĒā§‚āĻ°ā§āĻŖ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_ āĻ¨āĻžāĻŽ-āĻ¸ā§āĻĒā§‡āĻ¸ āĻ‰āĻĒāĻ¸āĻ°ā§āĻ— āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻ•āĻŋāĻ›ā§ āĻĻā§āĻ°ā§āĻ­āĻžāĻ—ā§āĻ¯āĻœāĻ¨āĻ• āĻĒāĻžāĻ°ā§āĻļā§āĻŦ-āĻĒā§āĻ°āĻ¤āĻŋāĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ†āĻ›ā§‡
āĻ¸ā§āĻĒāĻˇā§āĻŸāĻ¤āĻž āĻŦāĻŋāĻ­āĻžāĻ—, āĻĒāĻžāĻļāĻžāĻĒāĻžāĻļāĻŋāĨ¤

āĻ¨āĻžāĻŽā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻļāĻŦā§āĻĻā§‡āĻ° āĻ•ā§āĻ°āĻŽāĻ“ āĻ¯ā§āĻ•ā§āĻ¤āĻŋāĻ° āĻ•ā§āĻ°āĻŽ āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļ āĻ•āĻ°ā§‡āĨ¤ āĻ¯ā§āĻ•ā§āĻ¤āĻŋ
āĻ¤āĻžāĻ˛āĻŋāĻ•āĻž āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻļā§‡āĻˇ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ā§‡ āĻĒāĻžāĻ¸ āĻ•āĻ°āĻž āĻāĻ•āĻ‡ āĻ†āĻ°ā§āĻ—ā§āĻŽā§‡āĻ¨ā§āĻŸ āĻ¸āĻš; āĻ¸āĻŦ of āĻ¤āĻžāĻšāĻžāĻĻāĻŋāĻ—āĻ•ā§‡āĨ¤ āĻ¯āĻĻāĻŋ
_errno_ āĻ¨āĻžāĻŽā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ‰āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻšāĻ¯āĻŧ, āĻāĻ° āĻ†āĻ°ā§āĻ—ā§āĻŽā§‡āĻ¨ā§āĻŸ āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻ†āĻ°ā§āĻ—ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻ†āĻ—ā§‡ āĻĨāĻžāĻ•ā§‡āĨ¤ āĻ¯āĻĻāĻŋ
_message_ āĻ¨āĻžāĻŽā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ‰āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻšāĻ¯āĻŧ, āĻāĻ° āĻĻā§āĻŸāĻŋ āĻ†āĻ°ā§āĻ—ā§āĻŽā§‡āĻ¨ā§āĻŸ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻĒā§āĻ°āĻĨāĻŽā§‡ āĻ†āĻ¸ā§‡āĨ¤

5. Do it āĻ…āĻ§āĻŋāĻ•āĻžāĻ° or it āĻ‡āĻšā§āĻ›āĻž āĻŦāĻŋāĻ°āĻ¤āĻŋ at āĻ°āĻžāĻ¨āĻŸāĻžāĻ‡āĻŽ

libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻŦā§‹āĻ—āĻžāĻ¸ āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸāĻžāĻ° āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ…āĻ¨ā§‡āĻ• āĻœāĻžāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻŸāĻžāĻ° āĻ¸āĻ¨āĻžāĻ•ā§āĻ¤ āĻ•āĻ°ā§‡,
āĻāĻŦāĻ‚ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻ•āĻ āĻŋāĻ¨ āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ¤ā§‡āĻ“ āĻ¸ā§‡āĻ—āĻĢāĻ˛ā§āĻŸ āĻāĻĄāĻŧāĻžāĻ¤ā§‡ āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°ā§‡āĨ¤ āĻāĻŸāĻž āĻ‰āĻšāĻŋāĻ¤
āĻ°āĻžāĻ¨āĻŸāĻžāĻ‡āĻŽā§‡ āĻ•āĻ–āĻ¨āĻ‡ āĻŦāĻŋāĻ°āĻ¤āĻŋ āĻ•āĻ°āĻŦā§‡āĻ¨ āĻ¨āĻž, āĻ¤āĻŦā§‡ āĻ†āĻ°āĻ“ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ-āĻŦāĻŋāĻļā§āĻŦ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ¨āĻŋāĻƒāĻ¸āĻ¨ā§āĻĻā§‡āĻšā§‡ āĻāĻŸāĻŋāĻ•ā§‡ āĻ‰āĻ¨ā§āĻ¨āĻ¤ āĻ•āĻ°āĻŦā§‡āĨ¤

āĻ•āĻŋāĻ›ā§ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻļā§‡āĻˇ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻĻā§‡āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§‡ āĻŦāĻŋāĻ•āĻžāĻļāĻ•āĻžāĻ°ā§€ āĻāĻŦāĻ‚ āĻ°āĻ•ā§āĻˇāĻŖāĻžāĻŦā§‡āĻ•ā§āĻˇāĻŖāĻ•āĻžāĻ°ā§€āĻĻā§‡āĻ° āĻ˛āĻ•ā§āĻˇā§āĻ¯ āĻ•āĻ°ā§‡
āĻŦāĻžāĻ— āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§‡ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ¤āĻž āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻāĻ¤ "āĻ°āĻžāĻ¨āĻŸāĻžāĻ‡āĻŽā§‡ āĻŦāĻŋāĻ°āĻ¤āĻŋ" āĻšāĻŋāĻ¸āĻžāĻŦā§‡ "āĻ¤āĻĨā§āĻ¯āĻĒā§‚āĻ°ā§āĻŖ āĻšāĻ¤ā§‡ āĻšāĻŦā§‡ āĻ¨āĻž"
āĻ°āĻžāĻ¨āĻŸāĻžāĻ‡āĻŽ" (āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻŦāĻžāĻ°āĻĢā§‡āĻ° āĻĒāĻ°ā§‡)āĨ¤

4. āĻ…āĻ¨ā§āĻ¸āĻ°āĻŖ āĻ•āĻ°āĻž āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ¸āĻŽā§āĻŽā§‡āĻ˛āĻ¨ āĻāĻŦāĻ‚ āĻ†āĻĒāĻ¨āĻŋ āĻšāĻŦā§‡ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž it āĻ āĻŋāĻ• āĻ†āĻ›ā§‡āĨ¤

āĻ¯ā§‡āĻšā§‡āĻ¤ā§ C āĻāĻ° āĻ¨āĻžāĻŽ-āĻ¸ā§āĻĨāĻžāĻ¨ āĻ¨ā§‡āĻ‡, āĻ¤āĻžāĻ‡ libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻāĻ•āĻŸāĻŋ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_ āĻ¨āĻžāĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡
āĻ‰āĻĒāĻ¸āĻ°ā§āĻ— āĻāĻŸāĻŋ āĻāĻĄāĻŧāĻžāĻ¨ā§‹āĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻ›āĻĻā§āĻŽ-āĻ¨āĻžāĻŽ-āĻ¸ā§āĻĒā§‡āĻ¸ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻžāĻ° āĻāĻ¤āĻŋāĻšā§āĻ¯āĻ—āĻ¤ āĻ‰āĻĒāĻžāĻ¯āĻŧ
āĻĒā§āĻ°āĻ¤ā§€āĻ• āĻĻā§āĻŦāĻ¨ā§āĻĻā§āĻŦāĨ¤

āĻ¸āĻŽāĻ¸ā§āĻ¤ libexplain āĻ•āĻ˛ā§‡āĻ° āĻŸā§āĻ°ā§‡āĻ˛āĻŋāĻ‚ āĻ†āĻ°ā§āĻ—ā§āĻŽā§‡āĻ¨ā§āĻŸāĻ—ā§āĻ˛āĻŋ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ā§‡āĻ° āĻ…āĻ¨ā§āĻ°ā§‚āĻĒ
āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻ•āĻ°āĻ›ā§‡āĻ¨āĨ¤ āĻāĻŸāĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻžāĻĻā§ƒāĻļā§āĻ¯āĻĒā§‚āĻ°ā§āĻŖ āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻŽāĻžā§āĻœāĻ¸ā§āĻ¯āĻĒā§‚āĻ°ā§āĻŖ āĻ¸āĻŽā§āĻŽā§‡āĻ˛āĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ā§‡āĻ° āĻ‰āĻĻā§āĻĻā§‡āĻļā§āĻ¯ā§‡ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ā§ˇ
āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ¨āĻŋāĻœā§‡āĻĻā§‡āĻ° āĻ•āĻ˛.

3. āĻĒāĻĄāĻŧāĻž āĻĻā§āĻ¯ āĻĄāĻ•ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāĻ¨ āĻāĻŦāĻ‚ āĻ†āĻĒāĻ¨āĻŋ āĻšāĻŦā§‡ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž it āĻ āĻŋāĻ• āĻ†āĻ›ā§‡āĨ¤

libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋāĻ° āĻ˛āĻ•ā§āĻˇā§āĻ¯ āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§‡āĻ•ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻĄāĻ•ā§āĻ¸āĻŋāĻœā§‡āĻ¨ āĻĄāĻ•ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāĻ¨ āĻĨāĻžāĻ•āĻž
āĻ¸āĻ°ā§āĻŦāĻœāĻ¨ā§€āĻ¨ API āĻ•āĻ˛ (āĻāĻŦāĻ‚ āĻ…āĻ­ā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§€āĻŖāĻ­āĻžāĻŦā§‡āĻ“)āĨ¤

āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§


libexplain-āĻ āĻ•āĻžāĻœ āĻ•āĻ°āĻž āĻ…āĻ¨ā§‡āĻ•āĻŸāĻž āĻ†āĻĒāĻ¨āĻžāĻ° āĻ—āĻžāĻĄāĻŧāĻŋāĻ° āĻ¨āĻŋāĻšā§‡āĻ° āĻĻāĻŋāĻ•ā§‡ āĻ¤āĻžāĻ•āĻžāĻ¨ā§‹āĻ° āĻŽāĻ¤ā§‹
āĻŽā§‡āĻ•āĻžāĻ¨āĻŋāĻ• āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ‰āĻ¤ā§āĻ¤ā§‹āĻ˛āĻ¨. āĻ¸ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ¨āĻŋāĻšā§‡ āĻ•āĻŋāĻ›ā§ āĻ•ā§ā§ŽāĻ¸āĻŋāĻ¤ āĻœāĻŋāĻ¨āĻŋāĻ¸ āĻ†āĻ›ā§‡, āĻĒā§āĻ˛āĻžāĻ¸ āĻ•āĻžāĻĻāĻž āĻāĻŦāĻ‚ āĻ•āĻžāĻāĻšāĻž, āĻāĻŦāĻ‚
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ°āĻž āĻ–ā§āĻŦ āĻ•āĻŽāĻ‡ āĻāĻŸāĻŋ āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻ¨āĨ¤ āĻāĻ•āĻŸāĻŋ āĻ­āĻžāĻ˛ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻ¤āĻĨā§āĻ¯āĻĒā§‚āĻ°ā§āĻŖ āĻšāĻ¤ā§‡ āĻšāĻŦā§‡, āĻāĻŽāĻ¨āĻ•āĻŋ āĻāĻ•āĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¯āĻžāĻ°āĻž
āĻ¸ā§ŒāĻ­āĻžāĻ—ā§āĻ¯āĻŦāĻžāĻ¨ āĻ¯ā§‡ āĻ–ā§āĻŦ āĻ˜āĻ¨ āĻ˜āĻ¨ āĻ¨ā§€āĻšā§‡āĻ° āĻĻāĻŋāĻ•ā§‡ āĻ¤āĻžāĻ•āĻžāĻ¤ā§‡ āĻšāĻ¯āĻŧāĻ¨āĻŋ, āĻāĻŦāĻ‚ āĻāĻ›āĻžāĻĄāĻŧāĻžāĻ“
āĻĢā§‹āĻ¨ā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ° āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻļā§‹āĻ¨āĻž āĻŽā§‡āĻ•āĻžāĻ¨āĻŋāĻ•ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¤āĻĨā§āĻ¯āĻĒā§‚āĻ°ā§āĻŖāĨ¤ āĻāĻ‡
āĻ•ā§‹āĻ¨ āĻ¸āĻšāĻœ āĻ•āĻžāĻœāĨ¤

āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻĒā§āĻ¨āĻ°ā§āĻŦāĻŋāĻŦā§‡āĻšāĻ¨āĻž āĻ•āĻ°ā§‡, āĻ•ā§‹āĻĄāĻŸāĻŋ āĻāĻŸāĻŋ āĻĒāĻ›āĻ¨ā§āĻĻ āĻ•āĻ°āĻŦā§‡ āĻ¯āĻĻāĻŋ āĻāĻŸāĻŋ libexplain āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡:
int fd = āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_āĻ“āĻĒā§‡āĻ¨_āĻ…āĻ°_āĻĄāĻžāĻ‡("some/thing", O_RDONLY, 0);
āĻāĻ‡ āĻŽāĻ¤ āĻāĻ•āĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĻāĻŋāĻ¯āĻŧā§‡ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻŦā§‡
open(pathname = "some/file", flags = O_RDONLY) āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻāĻ°āĻ•āĻŽ āĻ•ā§‹āĻ¨ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻž āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨ā§‡āĻ‡
(2, ENOENT) āĻ•āĻžāĻ°āĻŖ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ¤ā§‡ "āĻ•āĻŋāĻ›ā§" āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨ā§‡āĻ‡
āĻāĻŸāĻŋ āĻ¤āĻŋāĻ¨ āĻŸā§āĻ•āĻ°ā§‹ āĻšāĻ¯āĻŧā§‡ āĻ¯āĻžāĻ¯āĻŧ
āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ-āĻ•āĻ˛ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ•āĻžāĻ°āĻŖ
āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž

āĻ¸āĻžāĻŽāĻ¨ā§‡ āĻ•āĻžāĻ°āĻŖ
"āĻ•āĻžāĻ°āĻŖ" āĻ…āĻ¤ā§āĻ¯āĻ§āĻŋāĻ• āĻĒā§āĻ°āĻ¯ā§āĻ•ā§āĻ¤āĻŋāĻ—āĻ¤ āĻĨā§‡āĻ•ā§‡ āĻ…-āĻāĻ° āĻ†āĻ—ā§‡ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻŸāĻŋāĻ° āĻ…āĻ‚āĻļāĻŸāĻŋ āĻĻā§‡āĻ–āĻž āĻ¸āĻŽā§āĻ­āĻŦāĨ¤
āĻĒā§āĻ°āĻ¯ā§āĻ•ā§āĻ¤āĻŋāĻ—āĻ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ°āĻž, āĻŦā§‡āĻļāĻŋāĻ°āĻ­āĻžāĻ—āĻ‡ āĻ¸āĻ āĻŋāĻ•āĻ­āĻžāĻŦā§‡ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽāĻŸāĻŋ āĻŽā§āĻĻā§āĻ°āĻŖā§‡āĻ° āĻĢāĻ˛ā§‡ āĻ¨āĻŋāĻœā§‡āĻ‡ āĻ•āĻ˛ āĻ•āĻ°ā§āĻ¨
āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ° āĻļā§āĻ°ā§āĨ¤ āĻāĻŦāĻ‚ āĻāĻŸāĻž āĻŽāĻ¨ā§‡ āĻšāĻšā§āĻ›ā§‡ āĻ¸ā§āĻŸā§āĻ°ā§‡āĻ¸(1) āĻ†āĻ‰āĻŸāĻĒā§āĻŸ, āĻŦā§‹āĻ¨āĻžāĻ¸ geek āĻœāĻ¨ā§āĻ¯
āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ.
open(pathname = "some/file", flags = O_RDONLY) āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻāĻ°āĻ•āĻŽ āĻ•ā§‹āĻ¨ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻž āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨ā§‡āĻ‡
(2, ENOENT)
āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ° āĻāĻ‡ āĻ…āĻ‚āĻļāĻŸāĻŋ āĻŦāĻŋāĻ•āĻžāĻļāĻ•āĻžāĻ°ā§€āĻ° āĻœāĻ¨ā§āĻ¯ āĻ…āĻĒāĻ°āĻŋāĻšāĻžāĻ°ā§āĻ¯ āĻ¯āĻ–āĻ¨ āĻ¤āĻŋāĻ¨āĻŋ āĻ•ā§‹āĻĄāĻŸāĻŋ āĻ˛āĻŋāĻ–āĻ›ā§‡āĻ¨,
āĻāĻŦāĻ‚ āĻ°āĻ•ā§āĻˇāĻŖāĻžāĻŦā§‡āĻ•ā§āĻˇāĻŖāĻ•āĻžāĻ°ā§€āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻžāĻ¨āĻ­āĻžāĻŦā§‡ āĻ—ā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻ¯āĻžāĻ•ā§‡ āĻŦāĻžāĻ— āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ āĻĒāĻĄāĻŧāĻ¤ā§‡ āĻšāĻŦā§‡ āĻāĻŦāĻ‚ āĻŦāĻžāĻ—āĻ—ā§āĻ˛āĻŋ āĻ āĻŋāĻ• āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡
āĻ•ā§‹āĻĄ āĻāĻŸāĻž āĻ āĻŋāĻ• āĻ•āĻŋ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ āĻŦāĻ˛ā§‡.

āĻ¯āĻĻāĻŋ āĻāĻ‡ āĻĒāĻžāĻ ā§āĻ¯āĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ° āĻ•āĻžāĻ›ā§‡ āĻ‰āĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻŋāĻ¤ āĻ¨āĻž āĻšāĻ¯āĻŧ āĻ¤āĻŦā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€ āĻāĻŸāĻŋ āĻ•āĻĒāĻŋ-āĻĒā§‡āĻ¸ā§āĻŸ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŦā§‡āĻ¨ āĻ¨āĻž
āĻŦāĻžāĻ— āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ, āĻāĻŦāĻ‚ āĻ¯āĻĻāĻŋ āĻāĻŸāĻŋ āĻŦāĻžāĻ— āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸā§‡ āĻ¨āĻž āĻĨāĻžāĻ•ā§‡ āĻ¤āĻŦā§‡ āĻ°āĻ•ā§āĻˇāĻŖāĻžāĻŦā§‡āĻ•ā§āĻˇāĻŖāĻ•āĻžāĻ°ā§€ āĻ†āĻ¸āĻ˛ā§‡ āĻ•ā§€ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¤āĻž āĻœāĻžāĻ¨āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¨āĻž
āĻ­ā§āĻ˛āĨ¤

āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻļāĻ‡ āĻĒā§āĻ°āĻ¯ā§āĻ•ā§āĻ¤āĻŋ āĻ•āĻ°ā§āĻŽā§€āĻ°āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻŦā§‡ āĻ¸ā§āĻŸā§āĻ°ā§‡āĻ¸(āĻāĻ•ā§āĻ¸āĻāĻ¨āĻāĻŽāĻāĻ•ā§āĻ¸) āĻŦāĻž āĻ†āĻāĻŸāĻŋ(1) āĻāĻ‡ āĻ¸āĻ āĻŋāĻ• āĻ¤āĻĨā§āĻ¯ āĻĒā§‡āĻ¤ā§‡, āĻ•āĻŋāĻ¨ā§āĻ¤ā§
āĻŦāĻžāĻ— āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ āĻĒāĻĄāĻŧāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻ‡ āĻĒāĻĨ āĻ–ā§‹āĻ˛āĻž āĻĨāĻžāĻ•ā§‡ āĻ¨āĻžāĨ¤ āĻŦāĻžāĻ— āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸāĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ…āĻ¨ā§‡āĻ• āĻĻā§‚āĻ°ā§‡
āĻĻā§‚āĻ°ā§‡, āĻāĻŦāĻ‚, āĻāĻ–āĻ¨ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤, āĻāĻ•āĻŸāĻŋ āĻ­āĻŋāĻ¨ā§āĻ¨ āĻ°āĻžāĻœā§āĻ¯ā§‡āĨ¤ āĻ¸ā§āĻ¤āĻ°āĻžāĻ‚, āĻāĻ‡ āĻ¤āĻĨā§āĻ¯ āĻĨāĻžāĻ•āĻž āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨
āĻŦāĻžāĻ— āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ, āĻ¯āĻžāĻ° āĻŽāĻžāĻ¨ā§‡ āĻāĻŸāĻŋ āĻ…āĻŦāĻļā§āĻ¯āĻ‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ¯āĻŧ āĻĨāĻžāĻ•āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤

āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻ¤ā§āĻŦ āĻāĻ›āĻžāĻĄāĻŧāĻžāĻ“ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻŦāĻžāĻ•āĻŋ āĻĒā§āĻ°āĻ¸āĻ™ā§āĻ— āĻĻā§‡āĻ¯āĻŧ. āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻšāĻ˛ā§‡
āĻĻā§‡āĻ–āĻž āĻĻā§‡āĻ¯āĻŧ, āĻ†āĻĒāĻ¤ā§āĻ¤āĻŋāĻ•āĻ° āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻ†āĻ°ā§āĻ—ā§āĻŽā§‡āĻ¨ā§āĻŸ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻžāĻŽ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ– āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡
"āĻ•āĻžāĻ°āĻŖ" āĻāĻ° āĻĒāĻ°ā§‡āĨ¤ āĻ‰āĻĒāĻ°āĻ¨ā§āĻ¤ā§, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖāĻ°ā§‚āĻĒā§‡ āĻ‰āĻĻā§āĻ§ā§ƒāĻ¤ āĻāĻŦāĻ‚ āĻ¸āĻŋ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚ āĻāĻ¸ā§āĻ•ā§‡āĻĒ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻ‡
āĻāĻŽā§āĻŦā§‡āĻĄ āĻ•āĻ°āĻž āĻ¨āĻ¤ā§āĻ¨ āĻ˛āĻžāĻ‡āĻ¨ āĻāĻŦāĻ‚ āĻ…-āĻŽā§āĻĻā§āĻ°āĻŖ āĻ…āĻ•ā§āĻˇāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ° āĻŸāĻžāĻ°ā§āĻŽāĻŋāĻ¨āĻžāĻ˛āĻ•ā§‡ āĻ¯ā§‡āĻ¤ā§‡ āĻĻā§‡āĻŦā§‡ āĻ¨āĻž
āĻ–āĻĄāĻŧāĻ•ā§āĻŸā§‹

āĻ¸āĻžāĻ°ā§āĻœāĻžāĻ°āĻŋāĻ° āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ¯āĻž āĻĨā§‡āĻ•ā§‡ āĻŦā§‡āĻ°āĻŋāĻ¯āĻŧā§‡ āĻ†āĻ¸ā§‡ āĻ¸ā§āĻŸā§āĻ°āĻ°āĻ°(2), āĻĒā§āĻ˛āĻžāĻ¸ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻšāĻŋāĻšā§āĻ¨āĨ¤ āĻ…āĻ§ā§ˆāĻ°ā§āĻ¯ āĻāĻŦāĻ‚
āĻŦāĻŋāĻļā§‡āĻˇāĻœā§āĻž sysadmins āĻāĻ‡ āĻ¸āĻŽāĻ¯āĻŧā§‡ āĻĒāĻĄāĻŧāĻž āĻŦāĻ¨ā§āĻ§ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ˛ā§‡āĻ–āĻ•ā§‡āĻ° āĻ†āĻœ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻ…āĻ­āĻŋāĻœā§āĻžāĻ¤āĻž
āĻ¯ā§‡ āĻ†āĻ°āĻ“ āĻĒāĻĄāĻŧāĻž āĻĢāĻ˛āĻĒā§āĻ°āĻ¸ā§‚ āĻšāĻ¯āĻŧ. (āĻ¯āĻĻāĻŋ āĻāĻŸāĻŋ āĻĢāĻ˛āĻĒā§āĻ°āĻ¸ā§‚ āĻ¨āĻž āĻšāĻ¯āĻŧ āĻ¤āĻŦā§‡ āĻāĻŸāĻŋ āĻ¸āĻŽā§āĻ­āĻŦāĻ¤ āĻāĻ° āĻāĻ•āĻŸāĻŋ āĻāĻ˛āĻžāĻ•āĻž
libexplain āĻ¯ā§‡ āĻ‰āĻ¨ā§āĻ¨āĻ¤ āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡. āĻ•ā§‹āĻĄ āĻ…āĻŦāĻĻāĻžāĻ¨ āĻ…āĻŦāĻļā§āĻ¯āĻ‡ āĻ¸ā§āĻŦāĻžāĻ—āĻ¤ āĻœāĻžāĻ¨āĻžāĻ‡āĨ¤)

āĻĒāĻ° āĻ•āĻžāĻ°āĻŖ
āĻāĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ° āĻ…āĻ‚āĻļ āĻ¯āĻž āĻ…-āĻĒā§āĻ°āĻ¯ā§āĻ•ā§āĻ¤āĻŋāĻ—āĻ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻĻā§‡āĻ° āĻ˛āĻ•ā§āĻˇā§āĻ¯ āĻ•āĻ°ā§‡āĨ¤ āĻāĻ° āĻŦāĻžāĻ‡āĻ°ā§‡āĻ“ āĻĻā§‡āĻ–āĻžāĻ¯āĻŧ
āĻ¸āĻšāĻœ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻ†āĻ°ā§āĻ—ā§āĻŽā§‡āĻ¨ā§āĻŸ, āĻāĻŦāĻ‚ āĻ†āĻ°ā§‹ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ•āĻŋāĻ›ā§ āĻœāĻ¨ā§āĻ¯ āĻĻā§‡āĻ–āĻžāĻ¯āĻŧ.
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ¤ā§‡ āĻ•ā§‹āĻ¨ "āĻ•āĻŋāĻ›ā§" āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨ā§‡āĻ‡
āĻāĻ‡ āĻ…āĻ‚āĻļāĻŸāĻŋ āĻ¸āĻ°āĻ˛ āĻ­āĻžāĻˇāĻžāĻ¯āĻŧ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ° āĻĒā§āĻ°āĻ•ā§āĻ¸āĻŋāĻŽāĻžāĻ˛ āĻ•āĻžāĻ°āĻŖ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ•āĻ°āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻāĻŸāĻŋ
āĻāĻ–āĻžāĻ¨ā§‡ āĻ†āĻ¨ā§āĻ¤āĻ°ā§āĻœāĻžāĻ¤āĻŋāĻ•ā§€āĻ•āĻ°āĻŖ āĻ…āĻĒāĻ°āĻŋāĻšāĻžāĻ°ā§āĻ¯āĨ¤

āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ­āĻžāĻŦā§‡, āĻ¨ā§€āĻ¤āĻŋ āĻšāĻ˛ āĻ¯āĻ¤āĻŸāĻž āĻ¸āĻŽā§āĻ­āĻŦ āĻ¤āĻĨā§āĻ¯ āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻž, āĻ¯āĻžāĻ¤ā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€
āĻāĻŸāĻŋ āĻ–ā§āĻāĻœāĻ¤ā§‡ āĻ¯ā§‡āĻ¤ā§‡ āĻšāĻŦā§‡ āĻ¨āĻž (āĻāĻŦāĻ‚ āĻŦāĻžāĻ— āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸā§‡āĻ° āĻŦāĻžāĻ‡āĻ°ā§‡ āĻāĻŸāĻŋ āĻ›ā§‡āĻĄāĻŧā§‡ āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻž)āĨ¤

āĻ†āĻ¨ā§āĻ¤āĻ°ā§āĻœāĻžāĻ¤āĻŋāĻ•ā§€āĻ•āĻ°āĻŖ
libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋāĻ° āĻŦā§‡āĻļāĻŋāĻ°āĻ­āĻžāĻ— āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻ†āĻ¨ā§āĻ¤āĻ°ā§āĻœāĻžāĻ¤āĻŋāĻ•ā§€āĻ•āĻ°āĻŖ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻ¸ā§‡āĻ–āĻžāĻ¨ā§‡
āĻāĻ–āĻ¨āĻ“ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻ•ā§‹āĻ¨ āĻ¸ā§āĻĨāĻžāĻ¨ā§€āĻ¯āĻŧāĻ•āĻ°āĻŖ āĻ¨ā§‡āĻ‡, āĻ¤āĻžāĻ‡ āĻ†āĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ¸ā§āĻĨāĻžāĻ¨ā§€āĻ¯āĻŧ āĻ­āĻžāĻˇāĻžāĻ¯āĻŧ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻšāĻžāĻ¨,
āĻ…āĻ¨ā§āĻ—ā§āĻ°āĻš āĻ•āĻ°ā§‡ āĻ…āĻŦāĻĻāĻžāĻ¨ āĻ°āĻžāĻ–ā§āĻ¨āĨ¤

āĻ‰āĻĒāĻ°ā§‡āĻ° "āĻ…āĻ§āĻŋāĻ•āĻžāĻ‚āĻļ" āĻ•ā§‹āĻ¯āĻŧāĻžāĻ˛āĻŋāĻĢāĻžāĻ¯āĻŧāĻžāĻ°āĻŸāĻŋ āĻāĻ‡ āĻ¸āĻ¤ā§āĻ¯ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•āĻŋāĻ¤ āĻ¯ā§‡ āĻ§āĻžāĻ°āĻŖāĻžāĻ° āĻĒā§āĻ°āĻŽāĻžāĻŖ
āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻ†āĻ¨ā§āĻ¤āĻ°ā§āĻœāĻžāĻ¤āĻŋāĻ•ā§€āĻ•āĻ°āĻŖ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻ¨āĻž. āĻ•ā§‹āĻĄ āĻŦā§‡āĻ¸ āĻšāĻšā§āĻ›ā§‡
āĻ•ā§āĻ°āĻŽāĻžāĻ¨ā§āĻŦāĻ¯āĻŧā§‡ āĻ¸āĻ‚āĻļā§‹āĻ§āĻŋāĻ¤ āĻšāĻ¯āĻŧ, āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ°āĻŋāĻĢā§āĻ¯āĻžāĻ•ā§āĻŸāĻ°āĻŋāĻ‚ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ° āĻĢāĻ˛ā§‡ āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ
āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚ āĻ•ā§‹āĻĄā§‡ āĻ āĻŋāĻ• āĻāĻ•āĻŦāĻžāĻ° āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤

āĻ¯ā§‡ āĻ­āĻžāĻˇāĻžāĻ—ā§āĻ˛āĻŋāĻ° āĻ…āĻ‚āĻļāĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻāĻ•āĻ¤ā§āĻ°āĻŋāĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡ āĻ¸ā§‡āĻ—ā§āĻ˛āĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻŦāĻŋāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ā§ˇ
āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ-āĻ•āĻ˛ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ•āĻžāĻ°āĻŖ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž
āĻ¸ā§āĻĨāĻžāĻ¨ā§€āĻ¯āĻŧ āĻ­ā§āĻ˛ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ¸āĻ āĻŋāĻ• āĻŦā§āĻ¯āĻžāĻ•āĻ°āĻŖā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻ•ā§āĻ°āĻŽā§‡āĨ¤

āĻĒā§‹āĻ¸ā§āĻŸāĻŽāĻ°ā§āĻŸā§‡āĻŽ
āĻāĻŽāĻ¨ āĻ¸āĻŽāĻ¯āĻŧ āĻ†āĻ›ā§‡ āĻ¯āĻ–āĻ¨ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ āĻāĻ–āĻ¨āĻ“ libexplain āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¨āĻž āĻāĻŦāĻ‚ āĻ†āĻĒāĻ¨āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŦā§‡āĻ¨ āĻ¨āĻž āĻ¸ā§āĻŸā§āĻ°ā§‡āĻ¸(1)
āĻšāĻ¯āĻŧ āĻāĻ–āĻžāĻ¨ā§‡ āĻāĻ•āĻŸāĻŋ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ•āĻ°āĻž(1) libexplain āĻ¸āĻš āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻ¯āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡
āĻĄāĻŋāĻ¸āĻŋāĻĢāĻžāĻ° āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž, āĻ¯āĻĻāĻŋ āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻšāĻŋāĻ¤ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻ…āĻŦāĻ¸ā§āĻĨāĻž āĻ–ā§āĻŦ āĻŦā§‡āĻļāĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻ¨āĻž āĻšāĻ¯āĻŧāĨ¤
$ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ•āĻ°āĻž āĻ¨āĻžāĻŽāĻžāĻ¨ā§āĻ¤āĻ° foo āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ /tmp/bar/baz -e ENOENT
āĻĒā§āĻ¨āĻƒāĻ¨āĻžāĻŽāĻ•āĻ°āĻŖ(oldpath = "foo", newpath = "/tmp/bar/baz") āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻāĻ°āĻ•āĻŽ āĻ•ā§‹āĻ¨ā§‹ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻž āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨ā§‡āĻ‡
(2, ENOENT) āĻ•āĻžāĻ°āĻŖ āĻ¨āĻ¤ā§āĻ¨āĻĒāĻĨā§‡ "āĻŦāĻžāĻ°" āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨ā§‡āĻ‡"/ tmp -āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§‡" āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ
$
āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻ†āĻ°ā§āĻ—ā§āĻŽā§‡āĻ¨ā§āĻŸ āĻ¨āĻžāĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻĒāĻĨā§‡āĻ° āĻ…āĻ¸ā§āĻĒāĻˇā§āĻŸāĻ¤āĻž āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¤āĻž āĻ¨ā§‹āĻŸ āĻ•āĻ°ā§āĻ¨āĨ¤ āĻāĻ°
āĻ…āĻŦāĻļā§āĻ¯āĻ‡, āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻāĻŦāĻ‚ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻœāĻžāĻ¨āĻ¤ā§‡ āĻšāĻŦā§‡ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ•āĻ°āĻž(1) āĻĻāĻ°āĻ•āĻžāĻ°ā§€ āĻšāĻ¤ā§‡. āĻāĻ•āĻŸāĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§‡
āĻĒāĻžāĻļāĻžāĻĒāĻžāĻļāĻŋ, āĻāĻŸāĻŋ āĻ¯āĻžāĻšāĻžāĻ‡ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ libexplain āĻ¸ā§āĻŦāĻ¯āĻŧāĻ‚āĻ•ā§āĻ°āĻŋāĻ¯āĻŧ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ¸ā§āĻ¯ā§āĻŸ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻ‰āĻĒāĻžāĻ¯āĻŧāĻ—ā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻāĻ•āĻŸāĻŋ
libexplain āĻ•āĻžāĻœ āĻ•āĻ°āĻ›ā§‡āĨ¤

āĻĻāĻ°ā§āĻļāĻ¨
"āĻ†āĻŽāĻžāĻ•ā§‡ āĻ¸āĻŦāĻ•āĻŋāĻ›ā§ āĻŦāĻ˛ā§āĻ¨, āĻāĻŽāĻ¨ āĻœāĻŋāĻ¨āĻŋāĻ¸āĻ—ā§āĻ˛āĻŋ āĻ¸āĻš āĻ¯āĻž āĻ†āĻŽāĻŋ āĻ–ā§āĻāĻœāĻ¤ā§‡ āĻœāĻžāĻ¨āĻŋ āĻ¨āĻžāĨ¤"

āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋāĻŸāĻŋ āĻāĻŽāĻ¨āĻ­āĻžāĻŦā§‡ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯ā§‡ āĻ¯āĻ–āĻ¨ āĻ¸ā§āĻŸā§āĻ¯āĻžāĻŸāĻŋāĻ•āĻžāĻ˛āĻŋ āĻ˛āĻŋāĻ™ā§āĻ• āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ•ā§‹āĻĄāĻŸāĻŋ āĻ†āĻĒāĻ¨āĻŋ
āĻ†āĻ¸āĻ˛ā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ˛āĻŋāĻ™ā§āĻ• āĻ•āĻ°āĻž āĻšāĻŦā§‡. āĻ‰ā§ŽāĻ¸ āĻĢāĻžāĻ‡āĻ˛ āĻĒā§āĻ°āĻ¤āĻŋ āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‚āĻļāĻ¨ āĻĨāĻžāĻ•āĻžāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻŸāĻŋ āĻ…āĻ°ā§āĻœāĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ,
āĻ¯āĻ–āĻ¨āĻ‡ āĻ¸āĻŽā§āĻ­āĻŦāĨ¤

āĻ¯āĻ–āĻ¨ āĻ†āĻ°āĻ“ āĻ¤āĻĨā§āĻ¯ āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻ•āĻ°āĻž āĻ¸āĻŽā§āĻ­āĻŦ āĻšāĻ¯āĻŧ, āĻ¤āĻ–āĻ¨ libexplain āĻ¤āĻž āĻ•āĻ°āĻŦā§‡āĨ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€ āĻ¤āĻ¤ āĻ•āĻŽ
āĻ¨āĻŋāĻœā§‡āĻĻā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻŸā§āĻ°ā§āĻ¯āĻžāĻ• āĻĄāĻžāĻ‰āĻ¨ āĻ†āĻ›ā§‡, āĻ­āĻžāĻ˛. āĻāĻ° āĻŽāĻžāĻ¨ā§‡ āĻšāĻ˛ āĻ¯ā§‡ UIDs āĻāĻ° āĻ¸āĻžāĻĨā§‡ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ° āĻ¨āĻžāĻŽ, āĻœāĻŋāĻ†āĻ‡āĻĄāĻŋāĻ—ā§āĻ˛āĻŋ āĻ—ā§‹āĻˇā§āĻ ā§€āĻ° āĻ¨āĻžāĻŽā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻĨāĻžāĻ•ā§‡, āĻĒāĻŋāĻ†āĻ‡āĻĄāĻŋāĻ—ā§āĻ˛āĻŋ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻ¸āĻžāĻĨā§‡ āĻĨāĻžāĻ•ā§‡
āĻ¨āĻžāĻŽ, āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻ•āĻžāĻ°ā§€ āĻāĻŦāĻ‚ āĻ¸ā§āĻŸā§āĻ°ā§€āĻŽāĻ—ā§āĻ˛āĻŋ āĻĒāĻžāĻĨāĻ¨āĻžāĻŽā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻĨāĻžāĻ•ā§‡, āĻ‡āĻ¤ā§āĻ¯āĻžāĻĻāĻŋ.

āĻĒāĻžāĻĨāĻ—ā§āĻ˛āĻŋ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻ¯āĻĻāĻŋ āĻāĻ•āĻŸāĻŋ āĻĒāĻžāĻĨ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻ¨āĻž āĻĨāĻžāĻ•ā§‡ āĻ¤āĻŦā§‡ libexplain āĻ…āĻ¨ā§āĻ°ā§‚āĻĒ āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻ•āĻ°āĻŦā§‡
āĻŸāĻžāĻ‡āĻĒā§‹āĻ—ā§āĻ°āĻžāĻĢāĻŋāĻ• āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻĒā§āĻ°āĻ¸ā§āĻ¤āĻžāĻŦ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¨āĻžāĻŽāĨ¤

libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻ¯āĻ¤āĻŸāĻž āĻ¸āĻŽā§āĻ­āĻŦ āĻ•āĻŽ āĻšāĻŋāĻĒ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°ā§‡, āĻāĻŦāĻ‚ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ•ā§‹āĻ¨āĻŸāĻŋāĻ‡ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻ‡
āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻ…āĻŦāĻ¸ā§āĻĨāĻžāĻ•ā§‡ āĻŦāĻŋāĻ°āĻ•ā§āĻ¤ āĻ¨āĻž āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯, āĻ¯āĻ¤āĻĻā§‚āĻ° āĻ¸āĻŽā§āĻ­āĻŦ, āĻ¯āĻĻāĻŋāĻ“ āĻ•āĻ–āĻ¨āĻ“ āĻ•āĻ–āĻ¨āĻ“ āĻāĻŸāĻŋ āĻšāĻ¯āĻŧ
āĻ…āĻ¨āĻŋāĻŦāĻžāĻ°ā§āĻ¯

libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻĨā§āĻ°ā§‡āĻĄ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻšāĻ“āĻ¯āĻŧāĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°ā§‡, āĻ—ā§āĻ˛ā§‹āĻŦāĻžāĻ˛ āĻ­ā§‡āĻ°āĻŋāĻ¯āĻŧā§‡āĻŦāĻ˛ āĻāĻĄāĻŧāĻŋāĻ¯āĻŧā§‡, āĻ°ā§‡āĻ–ā§‡
āĻ¯āĻ¤āĻŸāĻž āĻ¸āĻŽā§āĻ­āĻŦ āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ•ā§‡āĻ° āĻ‰āĻĒāĻ° āĻ°āĻžāĻˇā§āĻŸā§āĻ°. āĻāĻ•āĻŸāĻŋ āĻāĻ•āĻ• āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻŦāĻžāĻĢāĻžāĻ° āĻ†āĻ›ā§‡, āĻāĻŦāĻ‚
āĻ¯ā§‡ āĻĢāĻžāĻ‚āĻļāĻ¨āĻ—ā§āĻ˛āĻŋ āĻāĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ¤āĻž āĻĨā§āĻ°ā§‡āĻĄ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻ¨āĻ¯āĻŧ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻ¨āĻĨāĻŋāĻ­ā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤

libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻ¸āĻŋāĻ—āĻ¨ā§āĻ¯āĻžāĻ˛ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ°āĻĻā§‡āĻ° āĻŦāĻŋāĻ°āĻ•ā§āĻ¤ āĻ•āĻ°ā§‡ āĻ¨āĻžāĨ¤ āĻāĻŸāĻž āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§‡
āĻāĻ•āĻŸāĻŋ āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸāĻžāĻ° āĻāĻ•āĻŸāĻŋ āĻšā§āĻ¯āĻžāĻ˛ā§‡āĻžā§āĻœ āĻ¸ā§‡āĻ—āĻĢāĻ˛ā§āĻŸ āĻ•āĻ°āĻŦā§‡ āĻ•āĻŋāĻ¨āĻž āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°āĻž, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ…āĻ¸āĻŽā§āĻ­āĻŦ āĻ¨āĻ¯āĻŧāĨ¤

āĻ¯āĻ–āĻ¨ āĻ¤āĻĨā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ā§‡āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¸ā§‡āĻ‡āĻ¸āĻžāĻĨā§‡ āĻāĻ•āĻŸāĻŋ āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻ‰āĻĒāĻ˛āĻŦā§āĻ§ / proc
āĻāĻ¨ā§āĻŸā§āĻ°āĻŋ, āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻĒāĻ›āĻ¨ā§āĻĻ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ. āĻāĻŸāĻŋ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻŸāĻŋāĻ° āĻ…āĻŦāĻ¸ā§āĻĨāĻžāĻ•ā§‡ āĻŦāĻŋāĻ°āĻ•ā§āĻ¤ āĻ¨āĻž āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯āĨ¤
āĻāĻŽāĻ¨āĻ“ āĻ¸āĻŽāĻ¯āĻŧ āĻ†āĻ›ā§‡ āĻ¯āĻ–āĻ¨ āĻ•ā§‹āĻ¨ā§‹ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻ•āĻžāĻ°ā§€ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻžāĨ¤

libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻŦāĻĄāĻŧ āĻĢāĻžāĻ‡āĻ˛ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¸āĻš āĻ•āĻŽā§āĻĒāĻžāĻ‡āĻ˛ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ. āĻŦāĻĄāĻŧ/āĻ›ā§‹āĻŸ āĻ¨ā§‡āĻ‡
āĻ¸āĻŋāĻœā§‹āĻĢā§āĻ°ā§‡āĻ¨āĻŋāĻ¯āĻŧāĻž āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻāĻŸāĻŋ API-āĻ¤ā§‡ āĻ†āĻ°ā§āĻ—ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻ§āĻ°āĻ¨āĻ•ā§‡ āĻĒā§āĻ°āĻ­āĻžāĻŦāĻŋāĻ¤ āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻœāĻžāĻ°āĻŋ āĻ•āĻ°āĻž āĻšāĻŦā§‡
āĻ¯āĻĻāĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻŦāĻĄāĻŧ āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¸āĻ‚āĻœā§āĻžāĻž āĻ…āĻ¨ā§āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻĨāĻžāĻ•ā§‡āĨ¤

FIXME: āĻ•ā§‹āĻĄā§‡ āĻĢāĻžāĻ‡āĻ˛ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•ā§‹āĻŸāĻž āĻĒāĻ°āĻŋāĻšāĻžāĻ˛āĻ¨āĻž āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¤āĻž āĻ¨āĻŋāĻļā§āĻšāĻŋāĻ¤ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ•āĻžāĻœ āĻ•āĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨āĨ¤ āĻāĻ‡
āĻ•āĻŋāĻ›ā§ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻĒā§āĻ°āĻ¯ā§‹āĻœā§āĻ¯ getrlimit(2) āĻ¸ā§€āĻŽāĻžāĻ¨āĻž, āĻĒāĻžāĻļāĻžāĻĒāĻžāĻļāĻŋāĨ¤

āĻāĻŽāĻ¨ āĻ•āĻŋāĻ›ā§ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¯āĻ–āĻ¨ āĻ†āĻ¤ā§āĻŽā§€āĻ¯āĻŧāĻĻā§‡āĻ° āĻĒāĻĨāĻ—ā§āĻ˛āĻŋ āĻ¤āĻĨā§āĻ¯āĻšā§€āĻ¨āĨ¤ āĻ¯ā§‡āĻŽāĻ¨: āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻĄā§‡āĻŽāĻ¨,
āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻāĻŦāĻ‚ āĻŦā§āĻ¯āĻžāĻ•āĻ—ā§āĻ°āĻžāĻ‰āĻ¨ā§āĻĄ āĻĒā§āĻ°āĻ¸ā§‡āĻ¸āĨ¤ āĻāĻ‡ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡, āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ¤ā§‡ āĻĒāĻ°āĻŽ āĻĒāĻĨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ
āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž

āĻĒāĻžāĻĨ āĻ°ā§‡āĻœā§‹āĻ˛āĻŋāĻ‰āĻļāĻ¨


āĻ¸āĻ‚āĻ•ā§āĻˇāĻŋāĻĒā§āĻ¤ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ: āĻĻā§‡āĻ–ā§āĻ¨ āĻĒāĻĨ_āĻ°ā§‡āĻœā§‹āĻ˛āĻŋāĻ‰āĻļāĻ¨(7).

āĻĻā§€āĻ°ā§āĻ˜ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ: āĻŦā§‡āĻļā§€āĻ°āĻ­āĻžāĻ— āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€ āĻ•āĻ–āĻ¨āĻ“ āĻļā§‹āĻ¨ā§‡āĻ¨āĻ¨āĻŋ āĻĒāĻĨ_āĻ°ā§‡āĻœā§‹āĻ˛āĻŋāĻ‰āĻļāĻ¨(7), āĻāĻŦāĻ‚ āĻ…āĻ¨ā§‡āĻ• āĻ‰āĻ¨ā§āĻ¨āĻ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€
āĻāĻŸāĻž āĻĒāĻĄāĻŧāĻž āĻ¨āĻž. āĻāĻ–āĻžāĻ¨ā§‡ āĻāĻ•āĻŸāĻŋ āĻŸā§€āĻ•āĻž āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻ†āĻ›ā§‡:

āĻ§āĻžāĻĒ 1: āĻļā§āĻ°ā§ of āĻĻā§āĻ¯ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž
āĻ¯āĻĻāĻŋ āĻĒāĻžāĻĨāĻ¨āĻžāĻŽāĻŸāĻŋ āĻ¸ā§āĻ˛ā§āĻ¯āĻžāĻļ (“/”) āĻ…āĻ•ā§āĻˇāĻ° āĻĻāĻŋāĻ¯āĻŧā§‡ āĻļā§āĻ°ā§ āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻļā§āĻ°ā§āĻ° āĻ˛ā§āĻ•āĻ†āĻĒ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻšāĻŦā§‡
āĻ•āĻ˛āĻŋāĻ‚ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻ°ā§āĻŸ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĨ¤

āĻ¯āĻĻāĻŋ āĻĒāĻžāĻĨāĻ¨ā§‡āĻŽāĻŸāĻŋ āĻ¸ā§āĻ˛ā§āĻ¯āĻžāĻļ(“/”) āĻ…āĻ•ā§āĻˇāĻ° āĻĻāĻŋāĻ¯āĻŧā§‡ āĻļā§āĻ°ā§ āĻ¨āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻ¸ā§āĻŸāĻžāĻ°ā§āĻŸāĻŋāĻ‚ āĻ˛ā§āĻ•āĻ†āĻĒ
āĻ°ā§‡āĻœā§‹āĻ˛āĻŋāĻ‰āĻļāĻ¨ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻŸāĻŋ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻŸāĻŋāĻ° āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻžāĻ°ā§€ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĨ¤

āĻ§āĻžāĻĒ 2: āĻ“āĻ¯āĻŧāĻžāĻ• āĻŦāĻ°āĻžāĻŦāĻ° āĻĻā§āĻ¯ āĻĒāĻĨ
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ˛ā§āĻ•āĻ†āĻĒ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ•ā§‡ āĻĒā§āĻ°āĻžāĻ°āĻŽā§āĻ­āĻŋāĻ• āĻ˛ā§āĻ•āĻ†āĻĒ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ¤ā§‡ āĻ¸ā§‡āĻŸ āĻ•āĻ°ā§āĻ¨āĨ¤ āĻāĻ–āĻ¨, āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ…-āĻāĻ° āĻœāĻ¨ā§āĻ¯
āĻĒāĻĨāĻ¨āĻžāĻŽā§‡āĻ° āĻšā§‚āĻĄāĻŧāĻžāĻ¨ā§āĻ¤ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨, āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻāĻ•āĻŸāĻŋ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨ āĻšāĻ˛ āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻŦāĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚ āĻ¯āĻž āĻ¸ā§āĻ˛ā§āĻ¯āĻžāĻļ (“/”) āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸ā§€āĻŽāĻžāĻŦāĻĻā§āĻ§
āĻ…āĻ•ā§āĻˇāĻ°, āĻāĻ‡ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨āĻŸāĻŋ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ˛ā§āĻ•āĻ†āĻĒ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ¤ā§‡ āĻĻā§‡āĻ–āĻž āĻšāĻ¯āĻŧāĨ¤

āĻ¯āĻĻāĻŋ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻŸāĻŋāĻ° āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ˛ā§āĻ•āĻ†āĻĒ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ¤ā§‡ āĻ…āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ā§‡āĻ° āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻ¨āĻž āĻĨāĻžāĻ•ā§‡, āĻāĻ•āĻŸāĻŋ EACCES
āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻĢā§‡āĻ°āĻ¤ āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ ("āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻ…āĻ¸ā§āĻŦā§€āĻ•āĻžāĻ°")āĨ¤
open(pathname = "/home/archives/.ssh/private_key", flags = O_RDONLY) āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡,
āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻ…āĻ¸ā§āĻŦā§€āĻ•āĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ (13, EACCES) āĻ•āĻžāĻ°āĻŖ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻŸāĻŋāĻ¤ā§‡ āĻ…āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ā§‡āĻ° āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻ¨ā§‡āĻ‡ā§ˇ
āĻĒāĻžāĻĨāĻ¨āĻžāĻŽ "/home/archives/.ssh" āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ¤ā§‡, āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ° GID 1000
"pmiller" āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ° āĻŽāĻžāĻ˛āĻŋāĻ•ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻŽā§‡āĻ˛ā§‡ āĻ¨āĻž 1001 "āĻ†āĻ°ā§āĻ•āĻžāĻ‡āĻ­āĻ¸" āĻ¤āĻžāĻ‡ āĻŽāĻžāĻ˛āĻŋāĻ•
āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻŽā§‹āĻĄ "rwx" āĻ‰āĻĒā§‡āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ…āĻ¨ā§āĻ¯ āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻŽā§‹āĻĄ āĻšāĻ˛ "---", āĻāĻŦāĻ‚
āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻŦāĻŋāĻļā§‡āĻˇāĻžāĻ§āĻŋāĻ•āĻžāĻ°āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻ¨āĻ¯āĻŧ (DAC_READ_SEARCH āĻ•ā§āĻˇāĻŽāĻ¤āĻž āĻ¨ā§‡āĻ‡)

āĻ¯āĻĻāĻŋ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨āĻŸāĻŋ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¨āĻž āĻ¯āĻžāĻ¯āĻŧ, āĻāĻ•āĻŸāĻŋ ENOENT āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻĢā§‡āĻ°āĻ¤ āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ ("āĻāĻŽāĻ¨ āĻ•ā§‹āĻ¨ā§‹ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻž āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨ā§‡āĻ‡")āĨ¤
āĻ†āĻ¨āĻ˛āĻŋāĻ™ā§āĻ• (āĻĒāĻĨā§‡āĻ° āĻ¨āĻžāĻŽ = "/home/microsoft/rubbish") āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻāĻ‡ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻ•ā§‹āĻ¨ā§‹ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻž āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨ā§‡āĻ‡ (2,
ENOENT) āĻ•āĻžāĻ°āĻŖ āĻĒāĻĨāĻ¨āĻžāĻŽā§‡ āĻ•ā§‹āĻ¨ "āĻŽāĻžāĻ‡āĻ•ā§āĻ°ā§‹āĻ¸āĻĢā§āĻŸ" āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨ā§‡āĻ‡ "/ āĻšā§‹āĻŽ" āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ

āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ°āĻž āĻ¯āĻ–āĻ¨ āĻĒāĻĨā§‡āĻ° āĻ¨āĻžāĻŽ āĻ­ā§āĻ˛ āĻŸāĻžāĻ‡āĻĒ āĻ•āĻ°ā§‡, āĻ¤āĻ–āĻ¨ āĻĒāĻ°āĻžāĻŽāĻ°ā§āĻļ āĻĻā§‡āĻ¯āĻŧ āĻ¤āĻžāĻĻā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ•āĻŋāĻ›ā§ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨āĻ“ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡
ENOENT āĻĢā§‡āĻ°āĻ¤ āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ:
open(pathname = "/user/include/fcntl.h", āĻĒāĻ¤āĻžāĻ•āĻž = O_RDONLY) āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻāĻ‡ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻ•ā§‹āĻ¨ā§‹ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻž
āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ (2, ENOENT) āĻ•āĻžāĻ°āĻŖ āĻĒāĻĨāĻ¨āĻžāĻŽ "/" āĻ āĻ•ā§‹āĻ¨ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€" āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨ā§‡āĻ‡
āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ, āĻ†āĻĒāĻ¨āĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§‡ "usr" āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻŦāĻ˛āĻ¤ā§‡ āĻšāĻžāĻ¨?

āĻ¯āĻĻāĻŋ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨āĻŸāĻŋ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ, āĻ¤āĻŦā§‡ āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻŦāĻž āĻĒā§āĻ°āĻ¤ā§€āĻ•ā§€ āĻ˛āĻŋāĻ™ā§āĻ• āĻ¨āĻ¯āĻŧ, āĻāĻ•āĻŸāĻŋ ENOTDIR
āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻĢāĻŋāĻ°ā§‡ āĻāĻ¸ā§‡āĻ›ā§‡ ("āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨āĻ¯āĻŧ")āĨ¤
open(pathname = "/home/pmiller/.netrc/lca", āĻĒāĻ¤āĻžāĻ•āĻž = O_RDONLY) āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¯āĻŧ
āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ (20, ENOTDIR) āĻ•āĻžāĻ°āĻŖ āĻĒāĻžāĻĨāĻ¨ā§‡āĻŽā§‡ ".netrc" āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻĢāĻžāĻ‡āĻ˛
"/home/pmiller" āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡ āĻ¯āĻ–āĻ¨ āĻāĻŸāĻŋ āĻ¨ā§‡āĻ‡

āĻ¯āĻĻāĻŋ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨āĻŸāĻŋ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻ†āĻŽāĻ°āĻž āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ˛ā§āĻ•āĻ†āĻĒ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ•ā§‡ āĻ¸ā§‡āĻŸāĻŋāĻ¤ā§‡ āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻŋ
āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ¤ā§‡ āĻ¯āĻžāĻ¨ āĻāĻŦāĻ‚ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§€ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨ā§‡ āĻ¯āĻžāĻ¨āĨ¤

āĻ¯āĻĻāĻŋ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨āĻŸāĻŋ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻ¤ā§€āĻ•ā§€ āĻ˛āĻŋāĻ™ā§āĻ• (symlink), āĻ†āĻŽāĻ°āĻž āĻĒā§āĻ°āĻĨāĻŽā§‡ āĻāĻ‡ āĻĒā§āĻ°āĻ¤ā§€āĻ•ā§€ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻŋ
āĻ˛āĻŋāĻ™ā§āĻ• (āĻ¸ā§āĻŸāĻžāĻ°ā§āĻŸāĻŋāĻ‚ āĻ˛ā§āĻ•āĻ†āĻĒ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ˛ā§āĻ•āĻ†āĻĒ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ° āĻ¸āĻžāĻĨā§‡)āĨ¤ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ° āĻ‰āĻĒāĻ°, āĻ¯ā§‡
āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻĢā§‡āĻ°āĻ¤ āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻšāĻ¯āĻŧāĨ¤ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨āĻž āĻšāĻ˛ā§‡, āĻāĻ•āĻŸāĻŋ ENOTDIR āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻĢāĻŋāĻ°ā§‡ āĻ†āĻ¸ā§‡āĨ¤
āĻ†āĻ¨āĻ˛āĻŋāĻ™ā§āĻ• (āĻĒāĻĨā§‡āĻ° āĻ¨āĻžāĻŽ = "/tmp/dangling/rubbish") āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻāĻ‡ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻ•ā§‹āĻ¨ā§‹ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻž āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨ā§‡āĻ‡ (2,
ENOENT) āĻ•āĻžāĻ°āĻŖ āĻĒāĻĨāĻ¨āĻžāĻŽā§‡ "āĻā§āĻ˛āĻ¨ā§āĻ¤" āĻĒā§āĻ°āĻ¤ā§€āĻ•ā§€ āĻ˛āĻŋāĻ™ā§āĻ• "/ tmp -āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§‡" āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ
"āĻ•ā§‹āĻĨāĻžāĻ“ āĻ¨āĻ¯āĻŧ" āĻŦā§‹āĻāĻžāĻ¯āĻŧ āĻ¯āĻž āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻ¨ā§‡āĻ‡
āĻ¯āĻĻāĻŋ āĻ¸āĻŋāĻŽāĻ˛āĻŋāĻ‚āĻ•ā§‡āĻ° āĻ°ā§‡āĻœā§‹āĻ˛āĻŋāĻ‰āĻļāĻ¨ āĻ¸āĻĢāĻ˛ āĻšāĻ¯āĻŧ āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻ•āĻ°ā§‡, āĻ†āĻŽāĻ°āĻž āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻŋ
āĻ¯ā§‡ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ¤ā§‡ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻĻā§‡āĻ–ā§āĻ¨, āĻāĻŦāĻ‚ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§€ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨ā§‡ āĻ¯āĻžāĻ¨āĨ¤ āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ–ā§āĻ¯ āĻ¯ā§‡
āĻ°ā§‡āĻœā§‹āĻ˛āĻŋāĻ‰āĻļāĻ¨ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ–āĻžāĻ¨ā§‡ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§ƒāĻ¤ā§āĻ¤āĻŋ āĻœāĻĄāĻŧāĻŋāĻ¤. āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ•ā§‡āĻ° āĻŦāĻŋāĻ°ā§āĻĻā§āĻ§ā§‡ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻ°āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯
āĻ“āĻ­āĻžāĻ°āĻĢā§āĻ˛ā§‹, āĻāĻŦāĻ‚ āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻž āĻ…āĻ¸ā§āĻŦā§€āĻ•āĻžāĻ° āĻĨā§‡āĻ•ā§‡ āĻ°āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯, āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ• āĻ¸ā§€āĻŽāĻž āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡
āĻĒā§āĻ¨āĻ°āĻžāĻŦā§ƒāĻ¤ā§āĻ¤āĻŋ āĻ—āĻ­ā§€āĻ°āĻ¤āĻž, āĻāĻŦāĻ‚ āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ• āĻ¸āĻ‚āĻ–ā§āĻ¯āĻ• āĻĒā§āĻ°āĻ¤ā§€āĻ•ā§€ āĻ˛āĻŋāĻ™ā§āĻ• āĻ…āĻ¨ā§āĻ¸āĻ°āĻŖ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻāĻ•āĻŸāĻŋ ELOOP āĻ¤ā§āĻ°ā§āĻŸāĻŋ
āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ• āĻ…āĻ¤āĻŋāĻ•ā§āĻ°āĻŽ āĻ•āĻ°āĻž āĻšāĻ˛ā§‡ āĻĢā§‡āĻ°āĻ¤ āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ ("āĻ…āĻ¤ā§āĻ¯āĻ§āĻŋāĻ• āĻ¸ā§āĻ¤āĻ°ā§‡āĻ° āĻĒā§āĻ°āĻ¤ā§€āĻ•ā§€ āĻ˛āĻŋāĻ™ā§āĻ•")āĨ¤
open(pathname = "/tmp/dangling", flags = O_RDONLY) āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻāĻ° āĻ…āĻ¨ā§‡āĻ•āĻ—ā§āĻ˛āĻŋ āĻ¸ā§āĻ¤āĻ°
āĻĒā§āĻ°āĻ¤ā§€āĻ•ā§€ āĻ˛āĻŋāĻ™ā§āĻ• (40, ELOOP) āĻ•āĻžāĻ°āĻŖ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻ¤ā§€āĻ•ā§€ āĻ˛āĻŋāĻ™ā§āĻ• āĻ˛ā§āĻĒā§‡āĻ° āĻ¸āĻŽā§āĻŽā§āĻ–ā§€āĻ¨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡
āĻĒāĻĨā§‡āĻ° āĻ¨āĻžāĻŽ, "/tmp/dangling" āĻĨā§‡āĻ•ā§‡ āĻļā§āĻ°ā§
āĻ…āĻ¨ā§‡āĻ•āĻ—ā§āĻ˛āĻŋ āĻ¸āĻŋāĻŽāĻ˛āĻŋāĻ‚āĻ• āĻĨāĻžāĻ•āĻ˛ā§‡ āĻāĻ•āĻŸāĻŋ ELOOP āĻŦāĻž EMLINK āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻĒāĻžāĻ“āĻ¯āĻŧāĻžāĻ“ āĻ¸āĻŽā§āĻ­āĻŦ, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ¨āĻž
āĻ˛ā§āĻĒ āĻ¸āĻ¨āĻžāĻ•ā§āĻ¤ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤
open(pathname = "/tmp/āĻ°ā§āĻ¯āĻžāĻŦāĻŋāĻŸ-āĻšā§‹āĻ˛", āĻĒāĻ¤āĻžāĻ•āĻž = O_RDONLY) āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻāĻ° āĻ…āĻ¨ā§‡āĻ•āĻ—ā§āĻ˛āĻŋ āĻ¸ā§āĻ¤āĻ°
āĻ¸āĻŋāĻŽā§āĻŦāĻ˛āĻŋāĻ• āĻ˛āĻŋāĻ‚āĻ• (40, ELOOP) āĻ•āĻžāĻ°āĻŖ āĻ…āĻ¨ā§‡āĻ•āĻ—ā§āĻ˛ā§‹ āĻ¸āĻŋāĻŽā§āĻŦāĻ˛āĻŋāĻ• āĻ˛āĻŋāĻ™ā§āĻ• āĻāĻ° āĻ¸āĻŽā§āĻŽā§āĻ–ā§€āĻ¨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡
āĻĒāĻĨā§‡āĻ° āĻ¨āĻžāĻŽ (8)
āĻ˛āĻ•ā§āĻˇā§āĻ¯ āĻ•āĻ°ā§āĻ¨ āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻĒā§āĻ°āĻ•ā§ƒāĻ¤ āĻ¸ā§€āĻŽāĻž āĻŽā§āĻĻā§āĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤

āĻ§āĻžāĻĒ 3: āĻ†āĻŦāĻŋāĻˇā§āĻ•āĻžāĻ° āĻĻā§āĻ¯ āĻšā§‚āĻĄāĻŧāĻžāĻ¨ā§āĻ¤ āĻĒā§āĻ°āĻŦā§‡āĻļ
āĻĒāĻžāĻĨāĻ¨āĻžāĻŽā§‡āĻ° āĻšā§‚āĻĄāĻŧāĻžāĻ¨ā§āĻ¤ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨ā§‡āĻ° āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻ…āĻ¨ā§āĻ¯ āĻ¸āĻ•āĻ˛ā§‡āĻ° āĻŽāĻ¤ā§‹āĻ‡ āĻšāĻ¯āĻŧ
āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨, āĻĒā§‚āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§€ āĻ§āĻžāĻĒā§‡ āĻŦāĻ°ā§āĻŖāĻŋāĻ¤, āĻĻā§āĻŸāĻŋ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āĻ¯ āĻ¸āĻš:

(i) āĻšā§‚āĻĄāĻŧāĻžāĻ¨ā§āĻ¤ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨āĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻšāĻ¤ā§‡ āĻšāĻŦā§‡ āĻ¨āĻž (āĻ…āĻ¨ā§āĻ¤āĻ¤ āĻĒāĻžāĻĨ āĻ°ā§‡āĻœā§‹āĻ˛āĻŋāĻ‰āĻļāĻ¨ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤
āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ‰āĻĻā§āĻŦāĻŋāĻ—ā§āĻ¨āĨ¤ āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡, āĻŦāĻž āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¨-āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ, āĻ•āĻžāĻ°āĻŖ
āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ā§‡āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧāĻ¤āĻž)āĨ¤

(ā§¨)
āĻšā§‚āĻĄāĻŧāĻžāĻ¨ā§āĻ¤ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¨āĻž āĻ—ā§‡āĻ˛ā§‡ āĻāĻŸāĻŋ āĻ…āĻ—āĻ¤ā§āĻ¯āĻž āĻāĻ•āĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ¨āĻ¯āĻŧ; āĻšāĻ¯āĻŧāĻ¤ā§‹ āĻ†āĻŽāĻ°āĻž āĻļā§āĻ§ā§
āĻāĻŸāĻŋ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻšā§‚āĻĄāĻŧāĻžāĻ¨ā§āĻ¤ āĻāĻ¨ā§āĻŸā§āĻ°āĻŋ āĻšāĻŋāĻ•āĻŋāĻ¤ā§āĻ¸āĻžāĻ° āĻ‰āĻĒāĻ° āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ
āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ā§‡āĻ° āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ˛ āĻĒā§ƒāĻˇā§āĻ āĻžāĨ¤

(āĻ—)
āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻ¤ā§€āĻ•ā§€ āĻ˛āĻŋāĻ™ā§āĻ• āĻšāĻ˛ā§‡ āĻļā§‡āĻˇ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨āĻŸāĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻšāĻ“āĻ¯āĻŧāĻžāĻ“ āĻ¸āĻŽā§āĻ­āĻŦ
āĻāĻŦāĻ‚ āĻāĻŸāĻŋ āĻ…āĻ¨ā§āĻ¸āĻ°āĻŖ āĻ•āĻ°āĻž āĻ‰āĻšāĻŋāĻ¤ āĻ¨āĻ¯āĻŧāĨ¤ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ–ā§‹āĻ˛āĻž(2) O_NOFOLLOW āĻĒāĻ¤āĻžāĻ•āĻž:
open(pathname = "a-symlink", flags = O_RDONLY | O_NOFOLLOW) āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻāĻ° āĻ…āĻ¨ā§‡āĻ•āĻ—ā§āĻ˛āĻŋ āĻ¸ā§āĻ¤āĻ°
āĻ¸āĻŋāĻŽā§āĻŦāĻ˛āĻŋāĻ• āĻ˛āĻŋāĻ™ā§āĻ• (ELOOP) āĻ•āĻžāĻ°āĻŖ O_NOFOLLOW āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻĒāĻžāĻĨāĻ¨āĻžāĻŽ āĻāĻ•āĻŸāĻŋāĻ•ā§‡ āĻŦā§‹āĻāĻžāĻ¯āĻŧ
āĻĒā§āĻ°āĻ¤ā§€āĻ•ā§€ āĻ˛āĻŋāĻ™ā§āĻ•

(āĻˆ)
āĻĒāĻĨāĻ¨āĻžāĻŽ āĻŸāĻžāĻ‡āĻĒ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻĻā§‡āĻ° āĻ­ā§āĻ˛ āĻ•āĻ°āĻž āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĨ¤ libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ
āĻ¯āĻ–āĻ¨ ENOENT āĻĢā§‡āĻ°āĻ¤ āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ āĻ¤āĻ–āĻ¨ āĻĒāĻ°āĻžāĻŽāĻ°ā§āĻļ āĻĻā§‡āĻ“āĻ¯āĻŧāĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°ā§‡, āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ:
open(pathname = "/usr/include/filecontrl.h", āĻĒāĻ¤āĻžāĻ•āĻž = O_RDONLY) āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻāĻ‡ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻ•ā§‹āĻ¨ā§‹ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻž
āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ (2, ENOENT) āĻ•āĻžāĻ°āĻŖ āĻĒāĻĨāĻ¨āĻžāĻŽā§‡ āĻ•ā§‹āĻ¨ "filecontrl.h" āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻĢāĻžāĻ‡āĻ˛ āĻ¨ā§‡āĻ‡
"/ usr / āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤" āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ, āĻ†āĻĒāĻ¨āĻŋ āĻ•āĻŋ āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§‡ "fcntl.h" āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻ˛āĻ¤ā§‡ āĻšāĻžāĻ¨?

(v) āĻāĻŸāĻžāĻ“ āĻ¸āĻŽā§āĻ­āĻŦ āĻ¯ā§‡ āĻšā§‚āĻĄāĻŧāĻžāĻ¨ā§āĻ¤ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨āĻŸāĻŋ a āĻ›āĻžāĻĄāĻŧāĻž āĻ…āĻ¨ā§āĻ¯ āĻ•āĻŋāĻ›ā§ āĻšāĻ¤ā§‡ āĻšāĻŦā§‡
āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻĢāĻžāĻ‡āĻ˛:
āĻ°āĻŋāĻĄāĻ˛āĻŋāĻ‚āĻ• (āĻĒāĻžāĻĨā§‡āĻ° āĻ¨āĻžāĻŽ = "āĻļā§āĻ§ā§-āĻ-āĻĢāĻžāĻ‡āĻ˛", āĻĄā§‡āĻŸāĻž = 0x7F930A50, āĻĄā§‡āĻŸāĻž_āĻ¸āĻžāĻ‡āĻœ = 4097) āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡,
āĻ…āĻŦā§ˆāĻ§ āĻ¯ā§āĻ•ā§āĻ¤āĻŋ (22, EINVAL) āĻ•āĻžāĻ°āĻŖ āĻĒāĻĨāĻ¨āĻžāĻŽ āĻāĻ•āĻŸāĻŋ āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻĢāĻžāĻ‡āĻ˛, āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻ¤ā§€āĻ•ā§€ āĻ˛āĻŋāĻ™ā§āĻ• āĻ¨āĻ¯āĻŧ

(āĻŠ)
FIXME: "t" āĻŦāĻŋāĻŸ āĻĒāĻ°āĻŋāĻšāĻžāĻ˛āĻ¨āĻžāĨ¤

āĻ¸ā§€āĻŽāĻž
āĻĒāĻĨā§‡āĻ° āĻ¨āĻžāĻŽ āĻāĻŦāĻ‚ āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¨āĻžāĻŽāĻ—ā§āĻ˛āĻŋāĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻ…āĻ¨ā§‡āĻ•āĻ—ā§āĻ˛āĻŋ āĻ¸ā§€āĻŽāĻžāĻŦāĻĻā§āĻ§āĻ¤āĻž āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ā§ˇ

āĻĒāĻžāĻĨāĻ¨āĻžāĻŽā§‡āĻ° āĻĻā§ˆāĻ°ā§āĻ˜ā§āĻ¯ āĻ¸ā§€āĻŽāĻž
āĻĒāĻžāĻĨāĻ¨āĻžāĻŽā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻ°ā§āĻŦā§‹āĻšā§āĻš āĻĻā§ˆāĻ°ā§āĻ˜ā§āĻ¯ āĻ†āĻ›ā§‡āĨ¤ āĻ¯āĻĻāĻŋ āĻĒāĻĨā§‡āĻ° āĻ¨āĻžāĻŽ (āĻŦāĻž āĻ•āĻŋāĻ›ā§ āĻŽāĻ§ā§āĻ¯āĻŦāĻ°ā§āĻ¤ā§€
āĻĒā§āĻ°āĻ¤ā§€āĻ•ā§€ āĻ˛āĻŋāĻ™ā§āĻ•āĻ—ā§āĻ˛āĻŋ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻĒāĻĨāĻ¨āĻžāĻŽ) āĻ–ā§āĻŦ āĻĻā§€āĻ°ā§āĻ˜, āĻāĻ•āĻŸāĻŋ ENAMETOOLONGā§ˇ
āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻĢāĻŋāĻ°ā§‡ āĻāĻ¸ā§‡āĻ›ā§‡ ("āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¨āĻžāĻŽ āĻ–ā§āĻŦ āĻĻā§€āĻ°ā§āĻ˜")āĨ¤ āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ¸ā§€āĻŽāĻž āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ˛āĻ•ā§āĻˇā§āĻ¯ āĻ•āĻ°ā§āĻ¨
āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž.
āĻ–ā§āĻ˛ā§āĻ¨ (āĻĒāĻĨā§‡āĻ° āĻ¨āĻžāĻŽ = "āĻ–ā§āĻŦ āĻĻā§€āĻ°ā§āĻ˜", āĻĒāĻ¤āĻžāĻ•āĻž = O_RDONLY) āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¨āĻžāĻŽ āĻ…āĻ¨ā§‡āĻ• āĻŦāĻĄāĻŧ (36,
ENAMETOOLONG) āĻ•āĻžāĻ°āĻŖ āĻĒāĻžāĻĨāĻ¨āĻžāĻŽ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ• āĻĒāĻžāĻĨ āĻĻā§ˆāĻ°ā§āĻ˜ā§āĻ¯ (4096) āĻ›āĻžāĻĄāĻŧāĻŋāĻ¯āĻŧā§‡ āĻ—ā§‡āĻ›ā§‡

āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ¨āĻžāĻŽā§‡āĻ° āĻĻā§ˆāĻ°ā§āĻ˜ā§āĻ¯ āĻ¸ā§€āĻŽāĻž
āĻ•āĻŋāĻ›ā§ āĻ‡āĻ‰āĻ¨āĻŋāĻ•ā§āĻ¸ āĻ­ā§‡āĻ°āĻŋāĻ¯āĻŧā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻĒāĻžāĻĨ āĻ•āĻŽā§āĻĒā§‹āĻ¨ā§‡āĻ¨ā§āĻŸā§‡ āĻŦāĻžāĻ‡āĻŸā§‡āĻ° āĻ¸āĻ‚āĻ–ā§āĻ¯āĻžāĻ° āĻāĻ•āĻŸāĻŋ āĻ¸ā§€āĻŽāĻž āĻĨāĻžāĻ•ā§‡āĨ¤
āĻ¤āĻžāĻĻā§‡āĻ° āĻ•ā§‡āĻ‰ āĻ•ā§‡āĻ‰ āĻ¨ā§€āĻ°āĻŦā§‡ āĻāĻŸāĻŋ āĻŽā§‹āĻ•āĻžāĻŦā§‡āĻ˛āĻž āĻ•āĻ°ā§‡, āĻāĻŦāĻ‚ āĻ•ā§‡āĻ‰ āĻ•ā§‡āĻ‰ ENAMETOOLONāĻ— āĻĻā§‡āĻ¯āĻŧ; lib āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž
āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ pathconf(3) _PC_NO_TRUNC āĻ¯āĻž āĻŦāĻ˛āĻŦā§‡āĻ¨āĨ¤ āĻāĻ‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ˜āĻŸāĻ˛ā§‡,
libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ¯āĻŧ āĻ¸ā§€āĻŽāĻžāĻŸāĻŋ āĻŦāĻ˛āĻŦā§‡, āĻ¸ā§€āĻŽāĻžāĻŸāĻŋ āĻšāĻ˛
āĻĨā§‡āĻ•ā§‡ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ pathconf(3) _PC_NAME_MAXāĨ¤ āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ¸ā§€āĻŽāĻž āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ˛āĻ•ā§āĻˇā§āĻ¯ āĻ•āĻ°ā§āĻ¨
āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž.
āĻ–ā§āĻ˛ā§āĻ¨ (āĻĒāĻĨā§‡āĻ° āĻ¨āĻžāĻŽ = "system7/only-had-14-āĻ…āĻ•ā§āĻˇāĻ°", āĻĒāĻ¤āĻžāĻ•āĻž = O_RDONLY) āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻĢāĻžāĻ‡āĻ˛
āĻ¨āĻžāĻŽāĻŸāĻŋ āĻ–ā§āĻŦ āĻĻā§€āĻ°ā§āĻ˜ (36, ENAMETOOLONG) āĻ•āĻžāĻ°āĻŖ "āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ°-14-āĻ…āĻ•ā§āĻˇāĻ°" āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨ āĻšāĻ˛
āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ¸ā§€āĻŽāĻžāĻ° āĻšā§‡āĻ¯āĻŧā§‡ āĻŦā§‡āĻļāĻŋ (14)

āĻ–āĻžāĻ˛āĻŋ āĻĒāĻĨā§‡āĻ° āĻ¨āĻžāĻŽ
āĻŽā§‚āĻ˛ āĻ‡āĻ‰āĻ¨āĻŋāĻ•ā§āĻ¸ā§‡, āĻ–āĻžāĻ˛āĻŋ āĻĒāĻžāĻĨāĻ¨āĻžāĻŽāĻŸāĻŋ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ•ā§‡ āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ– āĻ•āĻ°ā§‡āĨ¤
āĻ†āĻœāĻ•āĻžāĻ˛ POSIX āĻ†āĻĻā§‡āĻļ āĻĻā§‡āĻ¯āĻŧ āĻ¯ā§‡ āĻāĻ•āĻŸāĻŋ āĻ–āĻžāĻ˛āĻŋ āĻĒāĻĨāĻ¨āĻžāĻŽ āĻ¸āĻĢāĻ˛āĻ­āĻžāĻŦā§‡ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻ‰āĻšāĻŋāĻ¤ āĻ¨āĻ¯āĻŧāĨ¤
open(pathname = "", flags = O_RDONLY) āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻāĻ°āĻ•āĻŽ āĻ•ā§‹āĻ¨ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻž āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨ā§‡āĻ‡ (2,
ENOENT) āĻ•āĻžāĻ°āĻŖ POSIX āĻ†āĻĻā§‡āĻļ āĻĻā§‡āĻ¯āĻŧ āĻ¯ā§‡ āĻāĻ•āĻŸāĻŋ āĻ–āĻžāĻ˛āĻŋ āĻĒāĻĨāĻ¨āĻžāĻŽ āĻ…āĻŦāĻļā§āĻ¯āĻ‡ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻž āĻ¯āĻžāĻŦā§‡ āĻ¨āĻž
āĻ¸āĻĢāĻ˛āĻ­āĻžāĻŦā§‡

āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋāĻ¸āĻŽā§‚āĻš
āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻŦāĻŋāĻŸ āĻ¤āĻŋāĻ¨āĻŸāĻŋ āĻŦāĻŋāĻŸā§‡āĻ° āĻ¤āĻŋāĻ¨āĻŸāĻŋ āĻ—ā§āĻ°ā§āĻĒ āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻ—āĻ āĻŋāĻ¤āĨ¤ āĻĒā§āĻ°āĻĨāĻŽ āĻ—ā§āĻ°ā§āĻĒ
āĻ¤āĻŋāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯āĻ–āĻ¨ āĻ•āĻ˛āĻŋāĻ‚ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ°ā§€ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€ āĻ†āĻ‡āĻĄāĻŋ āĻāĻ° āĻŽāĻžāĻ˛āĻŋāĻ• āĻ†āĻ‡āĻĄāĻŋāĻ° āĻ¸āĻŽāĻžāĻ¨ āĻšāĻ¯āĻŧ
āĻĢāĻžāĻ‡āĻ˛ āĻ¤āĻŋāĻ¨āĻŸāĻŋāĻ° āĻĻā§āĻŦāĻŋāĻ¤ā§€āĻ¯āĻŧ āĻ—ā§āĻ°ā§āĻĒāĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯āĻ–āĻ¨ āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ—ā§āĻ°ā§āĻĒ āĻ†āĻ‡āĻĄāĻŋ āĻšāĻ¯āĻŧ āĻ¸āĻŽāĻžāĻ¨ āĻšāĻ¯āĻŧ
āĻ•āĻ˛āĻŋāĻ‚ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ°ā§€ āĻ—ā§āĻ°ā§āĻĒ āĻ†āĻ‡āĻĄāĻŋ, āĻŦāĻž āĻāĻ° āĻĒāĻ°āĻŋāĻĒā§‚āĻ°āĻ• āĻ—ā§āĻ°ā§āĻĒ āĻ†āĻ‡āĻĄāĻŋāĻ—ā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻāĻ•āĻŸāĻŋ
āĻ•āĻ˛āĻŋāĻ‚ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĨ¤ āĻ¯āĻ–āĻ¨ āĻ•ā§‹āĻ¨āĻŸāĻŋāĻ‡ āĻ§āĻ°ā§‡ āĻ¨āĻž, āĻ¤ā§ƒāĻ¤ā§€āĻ¯āĻŧ āĻ—ā§āĻ°ā§āĻĒāĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻ–ā§āĻ˛ā§āĻ¨ (āĻĒāĻĨā§‡āĻ° āĻ¨āĻžāĻŽ = "/ Etc / passwd", āĻĒāĻ¤āĻžāĻ•āĻž = O_WRONLY) āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻ…āĻ¸ā§āĻŦā§€āĻ•āĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ (13,
EACCES) āĻ•āĻžāĻ°āĻŖ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻŸāĻŋāĻ° "passwd" āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻ˛ā§‡āĻ–āĻžāĻ° āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻ¨ā§‡āĻ‡
āĻĒāĻžāĻĨāĻ¨āĻžāĻŽā§‡ āĻĢāĻžāĻ‡āĻ˛ "āĻœāĻ¨ā§āĻ¯ / etc" āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ, āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ° UID 1000 "pmiller"
āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻĢāĻžāĻ‡āĻ˛ āĻŽāĻžāĻ˛āĻŋāĻ• 0 "āĻ°ā§āĻŸ" āĻāĻ° āĻ¸āĻžāĻĨā§‡ āĻŽā§‡āĻ˛ā§‡ āĻ¨āĻž āĻ¤āĻžāĻ‡ āĻŽāĻžāĻ˛āĻŋāĻ•ā§‡āĻ° āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻŽā§‹āĻĄ "rw-"
āĻ‰āĻĒā§‡āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻŽā§‹āĻĄ āĻšāĻ˛ "r--", āĻāĻŦāĻ‚ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻŸāĻŋ āĻŦāĻŋāĻļā§‡āĻˇāĻžāĻ§āĻŋāĻ•āĻžāĻ°āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻ¨āĻ¯āĻŧ
(DAC_OVERRIDE āĻ•ā§āĻˇāĻŽāĻ¤āĻž āĻ¨ā§‡āĻ‡)
āĻāĻ‡ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻžāĻ¯āĻŧ āĻ•āĻŋāĻ›ā§ āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ–āĻ¯ā§‹āĻ—ā§āĻ¯ āĻ¸ā§āĻĨāĻžāĻ¨ āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ•āĻžāĻ°āĻŖ āĻŦā§‡āĻļāĻŋāĻ°āĻ­āĻžāĻ— āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ‡ āĻāĻŸāĻŋ āĻœāĻžāĻ¨ā§‡āĻ¨ āĻ¨āĻž
āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡āĨ¤ āĻŦāĻŋāĻļā§‡āĻˇ āĻ•āĻ°ā§‡: āĻŽāĻžāĻ˛āĻŋāĻ•, āĻ—ā§‹āĻˇā§āĻ ā§€ āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯
āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻāĻ•āĻšā§‡āĻŸāĻŋāĻ¯āĻŧāĻž, āĻ¤āĻžāĻ°āĻž āĻāĻ•āĻ¸āĻžāĻĨā§‡ "āĻŦāĻž" āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻžāĨ¤

āĻ¸ā§āĻŸā§āĻ°ā§āĻ¯āĻžāĻ‚ āĻāĻŦāĻ‚ āĻŽāĻœāĻžāĻĻāĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻ•āĻ°ā§āĻ¨


āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ° āĻ˛ā§‡āĻ–āĻžāĻ° āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻ‡ āĻĒā§āĻ°āĻ•āĻžāĻļ āĻ•āĻ°ā§‡
āĻ†āĻ•āĻ°ā§āĻˇāĻŖā§€āĻ¯āĻŧ quirks āĻāĻŦāĻ‚ āĻ¸ā§€āĻŽāĻžāĻ¨āĻž āĻļāĻ°ā§āĻ¤, āĻŦāĻž āĻ…āĻ¸ā§āĻĒāĻˇā§āĻŸ āĻ­ā§āĻ˛(3) āĻŽāĻžāĻ¨āĨ¤

āĻāĻ¨ā§‹āĻŽā§‡āĻĄāĻŋāĻ¯āĻŧāĻžāĻŽ, āĻ¨āĻž āĻŽāĻ§ā§āĻ¯āĻŽ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž
āĻāĻ•āĻŸāĻŋ āĻ¸āĻŋāĻĄāĻŋ āĻ…āĻ¨ā§āĻ˛āĻŋāĻĒāĻŋ āĻ•āĻ°āĻžāĻ° āĻ•āĻžāĻœāĻŸāĻŋ āĻāĻ‡ āĻ•āĻžāĻ—āĻœā§‡āĻ° āĻļāĻŋāĻ°ā§‹āĻ¨āĻžāĻŽā§‡āĻ° āĻ‰āĻ¤ā§āĻ¸ āĻ›āĻŋāĻ˛āĨ¤
$ dd if=/dev/cdrom of=fubar.iso
dd: "/dev/cdrom" āĻ–ā§‹āĻ˛āĻž āĻšāĻšā§āĻ›ā§‡: āĻ•ā§‹āĻ¨ā§‹ āĻŽāĻžāĻ§ā§āĻ¯āĻŽ āĻ–ā§āĻāĻœā§‡ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧāĻ¨āĻŋ
$
āĻ˛ā§‡āĻ–āĻ• āĻ†āĻļā§āĻšāĻ°ā§āĻ¯ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛ā§‡āĻ¨ āĻ•ā§‡āĻ¨ āĻ¤āĻžāĻ° āĻ•āĻŽā§āĻĒāĻŋāĻ‰āĻŸāĻžāĻ° āĻ¤āĻžāĻ•ā§‡ āĻŦāĻ˛āĻ›ā§‡ āĻ¯ā§‡ āĻŽāĻžāĻ¨āĻ¸āĻŋāĻ• āĻŦāĻ˛ā§‡ āĻ•āĻŋāĻ›ā§ āĻ¨ā§‡āĻ‡
āĻŽāĻ§ā§āĻ¯āĻŽ. āĻŦā§‡āĻļ āĻŦā§āĻ¯āĻ¤ā§€āĻ¤ āĻ¯ā§‡ āĻŦāĻŋāĻĒā§āĻ˛ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻ• āĻ¸ā§āĻĨāĻžāĻ¨ā§€āĻ¯āĻŧ āĻ‡āĻ‚āĻ°ā§‡āĻœāĻŋ āĻ­āĻžāĻˇāĻžāĻ­āĻžāĻˇā§€ āĻ¨āĻ¯āĻŧ
āĻāĻŽāĻ¨āĻ•āĻŋ āĻ¸āĻšā§‡āĻ¤āĻ¨ āĻ¯ā§‡ "āĻŽāĻŋāĻĄāĻŋāĻ¯āĻŧāĻž" āĻāĻ•āĻŸāĻŋ āĻŦāĻšā§āĻŦāĻšāĻ¨, āĻāĻ•āĻž āĻ›ā§‡āĻĄāĻŧā§‡ āĻĻāĻŋāĻ¨ āĻ¯ā§‡ "āĻŽāĻžāĻ§ā§āĻ¯āĻŽ" āĻāĻ° āĻāĻ•āĻŦāĻšāĻ¨, āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚
āĻĻā§āĻŦāĻžāĻ°āĻž āĻĢāĻŋāĻ°ā§‡ āĻ¸ā§āĻŸā§āĻ°āĻ°āĻ°(3) ENOMEDIUM-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ¤āĻŸāĻžāĻ‡ āĻ•āĻ āĻŋāĻ¨ āĻ¯ā§‡ āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻŽā§āĻ•ā§āĻ¤
āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§āĨ¤

āĻ•āĻ–āĻ¨ āĻ–ā§‹āĻ˛āĻž(2) ENOMEDIUM āĻĢā§‡āĻ°āĻ¤ āĻĻā§‡āĻ¯āĻŧ āĻāĻŸāĻž āĻ­āĻžāĻ˛ā§‹ āĻšāĻŦā§‡ āĻ¯āĻĻāĻŋ libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡
āĻāĻ‡ āĻ¸āĻžāĻŽāĻžāĻ¨ā§āĻ¯, āĻāĻŸāĻž āĻĄā§āĻ°āĻžāĻ‡āĻ­ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻ‰āĻĒāĻ° āĻ­āĻŋāĻ¤ā§āĻ¤āĻŋ āĻ•āĻ°ā§‡. āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻŦāĻ°ā§‚āĻĒ:
...āĻ•āĻžāĻ°āĻŖ āĻĢā§āĻ˛āĻĒāĻŋ āĻĄā§āĻ°āĻžāĻ‡āĻ­ā§‡ āĻ•ā§‹āĻ¨ā§‹ āĻĄāĻŋāĻ¸ā§āĻ• āĻ¨ā§‡āĻ‡
... āĻ•āĻžāĻ°āĻŖ CD-ROM āĻĄā§āĻ°āĻžāĻ‡āĻ­ā§‡ āĻ•ā§‹āĻ¨ā§‹ āĻĄāĻŋāĻ¸ā§āĻ• āĻ¨ā§‡āĻ‡
... āĻ•āĻžāĻ°āĻŖ āĻŸā§‡āĻĒ āĻĄā§āĻ°āĻžāĻ‡āĻ­ā§‡ āĻ•ā§‹āĻ¨ āĻŸā§‡āĻĒ āĻ¨ā§‡āĻ‡
...āĻ•āĻžāĻ°āĻŖ āĻ•āĻžāĻ°ā§āĻĄ āĻ°āĻŋāĻĄāĻžāĻ°ā§‡ āĻ•ā§‹āĻ¨ā§‹ āĻŽā§‡āĻŽāĻ°āĻŋ āĻ¸ā§āĻŸāĻŋāĻ• āĻ¨ā§‡āĻ‡

āĻāĻŦāĻ‚ āĻ¤āĻžāĻ‡ āĻāĻŸāĻŋ āĻĒāĻžāĻ¸ āĻāĻ¸ā§‡āĻ›āĻŋāĻ˛ ...
open(pathname = "/dev/cdrom", flags = O_RDONLY) āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ•ā§‹āĻ¨ā§‹ āĻŽāĻžāĻ§ā§āĻ¯āĻŽ āĻ–ā§āĻāĻœā§‡ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧāĻ¨āĻŋ (123,
ENOMEDIUM) āĻ•āĻžāĻ°āĻŖ CD-ROM āĻĄā§āĻ°āĻžāĻ‡āĻ­ā§‡ āĻ•ā§‹āĻ¨ā§‹ āĻĄāĻŋāĻ¸ā§āĻ• āĻ†āĻ›ā§‡ āĻŦāĻ˛ā§‡ āĻŽāĻ¨ā§‡ āĻšāĻšā§āĻ›ā§‡ āĻ¨āĻž
āĻ•ā§ŒāĻļāĻ˛āĻŸāĻŋ, āĻ¯āĻž āĻ˛ā§‡āĻ–āĻ• āĻ†āĻ—ā§‡ āĻ…āĻœāĻžāĻ¨āĻž āĻ›āĻŋāĻ˛, āĻ¸ā§‡āĻŸāĻŋ āĻšāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻĄāĻŋāĻ­āĻžāĻ‡āĻ¸āĻŸāĻŋ āĻ–ā§āĻ˛āĻ¤ā§‡
O_NONBLOCK āĻĒāĻ¤āĻžāĻ•āĻž, āĻ¯āĻž āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻŽāĻžāĻ§ā§āĻ¯āĻŽ āĻ›āĻžāĻĄāĻŧāĻžāĻ‡ āĻāĻ•āĻŸāĻŋ āĻĄā§āĻ°āĻžāĻ‡āĻ­ āĻ–ā§āĻ˛āĻ¤ā§‡ āĻĻā§‡āĻŦā§‡ā§ˇ āĻ¤āĻžāĻ°āĻĒāĻ° āĻ†āĻĒāĻ¨āĻŋ
āĻ‡āĻ¸ā§āĻ¯ā§ āĻĄāĻŋāĻ­āĻžāĻ‡āĻ¸ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ ioctls(2) āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻ¯āĻ¤āĻ•ā§āĻˇāĻŖ āĻ¨āĻž āĻ†āĻĒāĻ¨āĻŋ āĻŦā§āĻāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ āĻ¯ā§‡ āĻāĻŸāĻŋ āĻ•ā§€āĨ¤ (āĻ¨āĻž
āĻāĻŸāĻŋ POSIX āĻšāĻ˛ā§‡ āĻ¨āĻŋāĻļā§āĻšāĻŋāĻ¤, āĻ¤āĻŦā§‡ āĻāĻŸāĻŋ BSD āĻāĻŦāĻ‚ Solaris-āĻāĻ“ āĻ¸ā§‡āĻ­āĻžāĻŦā§‡ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡ āĻŦāĻ˛ā§‡ āĻŽāĻ¨ā§‡ āĻšāĻšā§āĻ›ā§‡, āĻ…āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§€
āĻĻā§āĻ¯ wodim(1) āĻ¸ā§‚āĻ¤ā§āĻ°āĨ¤)

āĻĒā§āĻ°ā§‡āĻ•ā§āĻˇāĻžāĻĒāĻŸā§‡ "āĻĄāĻŋāĻ¸ā§āĻ•" āĻāĻŦāĻ‚ "āĻĄāĻŋāĻ¸ā§āĻ•" āĻāĻ° āĻ­āĻŋāĻ¨ā§āĻ¨ āĻ­āĻŋāĻ¨ā§āĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ“ āĻ¨ā§‹āĻŸ āĻ•āĻ°ā§āĻ¨āĨ¤ āĻ¸āĻŋāĻĄāĻŋ āĻŽāĻžāĻ¨ āĻ‰āĻĻā§āĻ­ā§‚āĻ¤
āĻĢā§āĻ°āĻžāĻ¨ā§āĻ¸ā§‡, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ…āĻ¨ā§āĻ¯ āĻ¸āĻŦ āĻ•āĻŋāĻ›ā§āĻ° āĻāĻ•āĻŸāĻŋ "k" āĻ†āĻ›ā§‡āĨ¤

EFAULT, āĻ–āĻžāĻ°āĻžāĻĒ āĻ āĻŋāĻ•āĻžāĻ¨āĻž
āĻ¯ā§‡āĻ•ā§‹āĻ¨ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻ¯āĻž āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸāĻžāĻ° āĻ†āĻ°ā§āĻ—ā§āĻŽā§‡āĻ¨ā§āĻŸ āĻ¨ā§‡āĻ¯āĻŧ āĻ¤āĻž EFAULT āĻĢā§‡āĻ°āĻ¤ āĻĻāĻŋāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ
āĻ•ā§‹āĻ¨ āĻ¯ā§āĻ•ā§āĻ¤āĻŋāĻŸāĻŋ āĻĻā§‹āĻˇā§‡ āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻāĻŦāĻ‚ āĻāĻŸāĻŋ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻŸāĻŋāĻ•ā§‡ āĻŦāĻŋāĻ°āĻ•ā§āĻ¤ āĻ¨āĻž āĻ•āĻ°ā§‡āĻ‡ āĻ•āĻ°ā§‡
(āĻŦāĻž āĻĨā§āĻ°ā§‡āĻĄ) āĻ¸āĻ‚āĻ•ā§‡āĻ¤ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻŋāĻ‚āĨ¤

āĻ¯āĻ–āĻ¨ āĻ‰āĻĒāĻ˛āĻŦā§āĻ§, āĻŽāĻŋāĻ¨āĻ•ā§‹āĻ°(2) āĻŽā§‡āĻŽāĻ°āĻŋ āĻ…āĻžā§āĻšāĻ˛āĻŸāĻŋ āĻŦā§ˆāĻ§ āĻ•āĻŋāĻ¨āĻž āĻ¤āĻž āĻœāĻŋāĻœā§āĻžāĻžāĻ¸āĻž āĻ•āĻ°āĻ¤ā§‡ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻāĻŸāĻŋ āĻ¤āĻŋāĻ¨āĻŸāĻŋ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻĢāĻŋāĻ°āĻŋāĻ¯āĻŧā§‡ āĻĻāĻŋāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡: āĻŽā§āĻ¯āĻžāĻĒ āĻ•āĻ°āĻž āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻļāĻžāĻ°ā§€āĻ°āĻŋāĻ• āĻŽā§‡āĻŽāĻ°āĻŋāĻ¤ā§‡ āĻ¨āĻ¯āĻŧ, āĻŽā§āĻ¯āĻžāĻĒ āĻ•āĻ°āĻž āĻāĻŦāĻ‚ āĻļāĻžāĻ°ā§€āĻ°āĻŋāĻ•āĻ­āĻžāĻŦā§‡
āĻŽā§‡āĻŽāĻ°āĻŋ, āĻāĻŦāĻ‚ āĻŽā§āĻ¯āĻžāĻĒ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋāĨ¤ āĻāĻ•āĻŸāĻŋ āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸāĻžāĻ°ā§‡āĻ° āĻŦā§ˆāĻ§āĻ¤āĻž āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻĒā§āĻ°āĻĨāĻŽ āĻĻā§āĻŸāĻŋ "āĻšā§āĻ¯āĻžāĻ"
āĻāĻŦāĻ‚ āĻļā§‡āĻˇāĻŸāĻŋ āĻšāĻ˛ "āĻ¨āĻž"āĨ¤

āĻ¸āĻŋ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚ āĻšā§‡āĻ• āĻ•āĻ°āĻž āĻ†āĻ°āĻ“ āĻ•āĻ āĻŋāĻ¨, āĻ•āĻžāĻ°āĻŖ āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸāĻžāĻ° āĻāĻŦāĻ‚ āĻ¸āĻžāĻ‡āĻœā§‡āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§‡ āĻ†āĻŽāĻ°āĻž āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ°
āĻāĻ•āĻŸāĻŋ āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸāĻžāĻ° āĻ†āĻ›ā§‡ āĻ†āĻ•āĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°āĻ¤ā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° NUL āĻ–ā§āĻāĻœā§‡ āĻŦā§‡āĻ° āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡, āĻāĻŦāĻ‚ āĻāĻŸāĻŋ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡
segfault, catch-22.

āĻāĻŸāĻŋāĻ•ā§‡ āĻ˜āĻŋāĻ°ā§‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯, libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ lstat(2) āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ (āĻāĻ•āĻŸāĻŋ āĻĒāĻ°āĻŋāĻšāĻŋāĻ¤ āĻ¸āĻ™ā§āĻ—ā§‡
āĻ­āĻžāĻ˛ āĻĻā§āĻŦāĻŋāĻ¤ā§€āĻ¯āĻŧ āĻ¯ā§āĻ•ā§āĻ¤āĻŋ) āĻŦā§ˆāĻ§āĻ¤āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻŋ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻ¤ā§‡āĨ¤ āĻāĻ•āĻŸāĻŋ āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻž āĻĢā§‡āĻ°āĻ¤ && errno == EFAULT
āĻāĻ•āĻŸāĻŋ "āĻ¨āĻž" āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āĻ¯ āĻ•āĻŋāĻ›ā§ āĻāĻ•āĻŸāĻŋ "āĻšā§āĻ¯āĻžāĻ"āĨ¤ āĻāĻŸāĻŋ āĻ…āĻŦāĻļā§āĻ¯āĻ‡ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚āĻ—ā§āĻ˛āĻŋāĻ•ā§‡ PATH_MAX-āĻ āĻ¸ā§€āĻŽāĻžāĻŦāĻĻā§āĻ§ āĻ•āĻ°ā§‡ā§ˇ
āĻ…āĻ•ā§āĻˇāĻ°, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŸāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¨āĻ¯āĻŧ, āĻ•āĻžāĻ°āĻŖ āĻāĻŸāĻŋ
āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻĻā§€āĻ°ā§āĻ˜āĻ¤āĻŽ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚ āĻāĻŸāĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ¯āĻ¤ā§āĻ¨āĻļā§€āĻ˛.

EMFILE, āĻ…āĻ¤ā§āĻ¯āĻ§āĻŋāĻ• āĻ…āĻ¨ā§‡āĻ• āĻ–ā§‹āĻ˛āĻž āĻ¨āĻĨāĻŋ āĻĒāĻ¤ā§āĻ°
āĻāĻ‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻŸāĻŋ āĻ˜āĻŸā§‡ āĻ¯āĻ–āĻ¨ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡āĻ‡ āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ• āĻ¸āĻ‚āĻ–ā§āĻ¯āĻ• āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻ•āĻžāĻ°ā§€ āĻ–ā§‹āĻ˛āĻž āĻĨāĻžāĻ•ā§‡āĨ¤
āĻ¯āĻĻāĻŋ āĻĒā§āĻ°āĻ•ā§ƒāĻ¤ āĻ¸ā§€āĻŽāĻž āĻĒā§āĻ°āĻŋāĻ¨ā§āĻŸ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻāĻŦāĻ‚ libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°ā§‡, āĻ†āĻĒāĻ¨āĻŋ āĻ–ā§āĻ˛āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŦā§‡āĻ¨ āĻ¨āĻž
āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‡āĻ˛ / proc āĻāĻŸāĻž āĻ•āĻŋ āĻĒāĻĄāĻŧāĻ¤ā§‡.
open_max = sysconf(_SC_OPEN_MAX);
āĻāĻ‡ āĻāĻ• āĻ¤āĻžāĻ‡ āĻ•āĻ āĻŋāĻ¨ āĻ¨āĻž, āĻāĻ•āĻŸāĻŋ āĻ†āĻ›ā§‡ sysconf(3) āĻ¸ā§€āĻŽāĻž āĻĒā§āĻ°āĻžāĻĒā§āĻ¤āĻŋāĻ° āĻ‰āĻĒāĻžāĻ¯āĻŧāĨ¤

ENFILE, āĻ…āĻ¤ā§āĻ¯āĻ§āĻŋāĻ• āĻ…āĻ¨ā§‡āĻ• āĻ–ā§‹āĻ˛āĻž āĻ¨āĻĨāĻŋ āĻĒāĻ¤ā§āĻ° in āĻĒāĻĻā§āĻ§āĻ¤āĻŋ
āĻāĻ‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ˜āĻŸā§‡ āĻ¯āĻ–āĻ¨ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ¸ā§€āĻŽāĻž āĻ–ā§‹āĻ˛āĻž āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻŽā§‹āĻŸ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡
āĻĒā§ŒāĻāĻ›ā§‡āĻ›ā§‡ āĻāĻ‡ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻ•ā§‹āĻ¨ āĻšāĻžāĻ¤ āĻ¨ā§‡āĻ‡ sysconf(3) āĻ¸ā§€āĻŽāĻž āĻĒāĻžāĻ“āĻ¯āĻŧāĻžāĻ° āĻ‰āĻĒāĻžāĻ¯āĻŧāĨ¤

āĻ†āĻ°āĻ“ āĻ—āĻ­ā§€āĻ°ā§‡ āĻ–āĻ¨āĻ¨ āĻ•āĻ°āĻ˛ā§‡, āĻ•ā§‡āĻ‰ āĻ†āĻŦāĻŋāĻˇā§āĻ•āĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¯ā§‡ āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ā§‡ āĻāĻ•āĻŸāĻŋ āĻ†āĻ›ā§‡ / proc āĻāĻ¨ā§āĻŸā§āĻ°āĻŋ āĻ†āĻŽāĻ°āĻž āĻĒāĻĄāĻŧāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡
āĻāĻ‡ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤. āĻ•ā§āĻ¯āĻžāĻš-22: āĻ†āĻŽāĻ°āĻž āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻ•āĻžāĻ°ā§€āĻ° āĻŦāĻžāĻ‡āĻ°ā§‡, āĻ¤āĻžāĻ‡ āĻ†āĻŽāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‡āĻ˛ āĻ–ā§āĻ˛āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋ āĻ¨āĻž
āĻ¸ā§€āĻŽāĻž āĻĒāĻĄāĻŧā§āĻ¨āĨ¤

āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ā§‡ āĻāĻŸāĻŋ āĻĒāĻžāĻ“āĻ¯āĻŧāĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¤āĻŦā§‡ āĻāĻŸāĻŋāĻ¤ā§‡ āĻ•ā§‹āĻ¨āĻ“ [āĻ‡] glibc āĻ°ā§āĻ¯āĻžāĻĒāĻžāĻ° āĻĢāĻžāĻ‚āĻļāĻ¨ āĻ¨ā§‡āĻ‡, āĻ¤āĻžāĻ‡
āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻāĻŸāĻŋ āĻ–ā§āĻŦ āĻ¸āĻžāĻŦāĻ§āĻžāĻ¨ā§‡ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡:
āĻĻā§€āĻ°ā§āĻ˜
āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_āĻŽā§āĻ¯āĻžāĻ•ā§āĻ¸āĻĢāĻžāĻ‡āĻ˛(āĻ…āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ°)
{
#ifdef __linux__
struct __sysctl_args args;
int32_t āĻŽā§āĻ¯āĻžāĻ•ā§āĻ¸āĻĢāĻžāĻ‡āĻ˛;
size_t maxfile_size = āĻ†āĻ•āĻžāĻ°(maxfile);
int name[] = { CTL_FS, FS_MAXFILE };
memset(&args, 0, sizeof(struct __sysctl_args));
args.name = āĻ¨āĻžāĻŽ;
args.nlen = 2;
args.oldval = &maxfile;
args.oldlenp = &maxfile_size;
āĻ¯āĻĻāĻŋ (syscall(SYS__sysctl, &args) >= 0)
āĻ°āĻŋāĻŸāĻžāĻ°ā§āĻ¨ āĻŽā§āĻ¯āĻžāĻ•ā§āĻ¸āĻĢāĻžāĻ‡āĻ˛;
#endif
āĻ°āĻŋāĻŸāĻžāĻ°ā§āĻ¨ -1;
}
āĻāĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ¯āĻŧ āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻžāĻ° āĻ¸ā§€āĻŽāĻžāĻ•ā§‡ āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§‡āĻ¯āĻŧ, āĻ¯āĻ–āĻ¨ āĻ‰āĻĒāĻ˛āĻŦā§āĻ§ āĻĨāĻžāĻ•ā§‡āĨ¤

EINVAL "āĻ…āĻŦā§ˆāĻ§ āĻ¯ā§āĻ•ā§āĻ¤āĻŋ" vs ENOSYS "āĻĢāĻžāĻ‚āĻļāĻ¨ āĻ¨āĻž āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻŋāĻ¤"
āĻ…āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻ•āĻ°ā§āĻŽ (āĻ¯ā§‡āĻŽāĻ¨ āĻ¸āĻŋāĻŽāĻŦāĻ˛āĻŋāĻ• āĻ˛āĻŋāĻ™ā§āĻ•(2) āĻāĻ•āĻŸāĻŋ FAT āĻĢāĻžāĻ‡āĻ˛ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡) āĻ°āĻŋāĻĒā§‹āĻ°ā§āĻŸ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž
āĻ§āĻžāĻ°āĻžāĻŦāĻžāĻšāĻŋāĻ•āĻ­āĻžāĻŦā§‡ āĻāĻ• āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻĨā§‡āĻ•ā§‡ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§€āĻ¤ā§‡āĨ¤ āĻāĻŸāĻž EINVAL āĻŦāĻž āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡
ENOSYS āĻĢāĻŋāĻ°ā§‡ āĻāĻ¸ā§‡āĻ›ā§‡āĨ¤

āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻāĻ‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻŽāĻ¨ā§‹āĻ¯ā§‹āĻ— āĻĻāĻŋāĻ¤ā§‡ āĻšāĻŦā§‡ āĻ¯āĻžāĻ¤ā§‡ āĻ¸ā§‡āĻ—ā§āĻ˛āĻŋ āĻ¸āĻ āĻŋāĻ• āĻšāĻ¯āĻŧ, āĻŦāĻŋāĻļā§‡āĻˇ āĻ•āĻ°ā§‡ā§ˇ
āĻ¯ā§‡āĻšā§‡āĻ¤ā§ EINVAL āĻāĻ• āĻŦāĻž āĻāĻ•āĻžāĻ§āĻŋāĻ• āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻ†āĻ°ā§āĻ—ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ° āĻ•āĻĨāĻžāĻ“ āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ– āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤

āĻŦāĻŋāĻƒāĻĻā§āĻ°āĻƒ āĻ¯ā§‡ āĻ­ā§āĻ˛(3) is āĻ¨āĻž āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻ¸ā§‡āĻŸ
āĻāĻŽāĻ¨ āĻ•āĻŋāĻ›ā§ āĻ¸āĻŽāĻ¯āĻŧ āĻ†āĻ›ā§‡ āĻ¯āĻ–āĻ¨ āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻāĻŦāĻ‚ āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°āĻ¤ā§‡ [e]glibc āĻ‰āĻ¤ā§āĻ¸āĻ—ā§āĻ˛āĻŋ āĻĒāĻĄāĻŧāĻ¤ā§‡ āĻšāĻŦā§‡
āĻ¯āĻ–āĻ¨ āĻ•āĻŋāĻ›ā§ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ—ā§āĻ˛āĻŋ āĻĢā§‡āĻ°āĻ¤ āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻšāĻ¯āĻŧāĨ¤

feof(ā§¨ā§Ļā§§ā§§), āĻ¨āĻĨāĻŋ āĻ¨āĻŽā§āĻŦāĻ°(3)
āĻāĻŸāĻž āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻ‡ āĻ…āĻ¨ā§āĻŽāĻžāĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯ā§‡ āĻāĻ‡ āĻĢāĻžāĻ‚āĻļāĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻĢā§‡āĻ°āĻ¤ āĻĻāĻŋāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¨āĻž. āĻāĻ‡ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¯āĻĻāĻŋ āĻ¸āĻ¤ā§āĻ¯
āĻĻā§āĻ¯ āĻĒā§āĻ°āĻŦāĻžāĻš āĻ¯ā§āĻ•ā§āĻ¤āĻŋ āĻŦā§ˆāĻ§, āĻ¤āĻŦā§‡ āĻ¤āĻžāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻ…āĻŦā§ˆāĻ§ āĻ¸āĻ¨āĻžāĻ•ā§āĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻ¸āĻ•ā§āĻˇāĻŽ
āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸāĻžāĻ°

fpathconf(ā§¨ā§Ļā§§ā§§), pathconf(3)
āĻāĻ° āĻ°āĻŋāĻŸāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ fpathconf(2) āĻāĻŦāĻ‚ pathconf(2) āĻŦā§ˆāĻ§āĻ­āĻžāĻŦā§‡ -1 āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡, āĻ¤āĻžāĻ‡ āĻāĻŸāĻŋ
āĻĻā§‡āĻ–āĻ¤ā§‡ āĻšāĻŦā§‡ āĻ•āĻŋāĻ¨āĻž āĻ­ā§āĻ˛(3) āĻ¸ā§āĻĒāĻˇā§āĻŸāĻ­āĻžāĻŦā§‡ āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡.

ioctls(2)
āĻāĻ° āĻ°āĻŋāĻŸāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ ioctls(2) āĻŦā§ˆāĻ§āĻ­āĻžāĻŦā§‡ -1 āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡, āĻ¤āĻžāĻ‡ āĻĻā§‡āĻ–āĻ¤ā§‡ āĻšāĻŦā§‡ āĻ•āĻŋāĻ¨āĻž
āĻ­ā§āĻ˛(3) āĻ¸ā§āĻĒāĻˇā§āĻŸāĻ­āĻžāĻŦā§‡ āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡.

readdir(3)
āĻāĻ° āĻ°āĻŋāĻŸāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ readdir(3) āĻ‰āĻ­āĻ¯āĻŧ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻāĻŦāĻ‚ āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻļā§‡āĻˇā§‡āĻ° āĻœāĻ¨ā§āĻ¯ NULLāĨ¤ āĻāĻŸāĻžāĻ‡
āĻĻā§‡āĻ–āĻ¤ā§‡ āĻšāĻŦā§‡ āĻ•āĻŋāĻ¨āĻž āĻ­ā§āĻ˛(3) āĻ¸ā§āĻĒāĻˇā§āĻŸāĻ­āĻžāĻŦā§‡ āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡.

āĻ¸ā§‡āĻŸāĻŦāĻžāĻĢ(ā§¨ā§Ļā§§ā§§), āĻ¸ā§‡āĻŸāĻŦāĻžāĻĢāĻžāĻ°(ā§¨ā§Ļā§§ā§§), āĻ¸ā§‡āĻŸāĻ˛āĻžāĻ‡āĻ¨āĻŦāĻžāĻĢ(ā§¨ā§Ļā§§ā§§), setvbuf(3)
āĻāĻ‡ āĻĢāĻžāĻ‚āĻļāĻ¨ āĻļā§‡āĻˇ āĻ›āĻžāĻĄāĻŧāĻž āĻ¸āĻŦ āĻ…āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ° āĻĢāĻŋāĻ°ā§‡. āĻāĻŦāĻ‚ setvbuf(3) āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻ¨āĻĨāĻŋāĻ­ā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ
āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ¤ā§‡ "āĻ…-āĻļā§‚āĻ¨ā§āĻ¯" āĻĢā§‡āĻ°āĻ¤ āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻšāĻšā§āĻ›ā§‡āĨ¤ āĻ•āĻŋāĻ¨āĻž āĻ¤āĻž āĻĻā§‡āĻ–āĻž āĻĻāĻ°āĻ•āĻžāĻ° āĻ­ā§āĻ˛(3) āĻ¸ā§āĻĒāĻˇā§āĻŸāĻ­āĻžāĻŦā§‡ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡
āĻ¸ā§‡āĻŸāĨ¤

āĻ¸ā§āĻŸā§āĻ°āĻŸā§‹āĻĄ(ā§¨ā§Ļā§§ā§§), strtol(ā§¨ā§Ļā§§ā§§), strtold(ā§¨ā§Ļā§§ā§§), āĻ¸ā§āĻŸā§āĻ°ā§‹āĻ˛(ā§¨ā§Ļā§§ā§§), strtoul(ā§¨ā§Ļā§§ā§§), āĻ¸ā§āĻŸā§āĻ°āĻŸāĻ‰āĻ˛(3)
āĻāĻ‡ āĻĢāĻžāĻ‚āĻļāĻ¨āĻ—ā§āĻ˛āĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ¤ā§‡ 0 āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻ•āĻ°ā§‡, āĻ¤āĻŦā§‡ āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻŦā§ˆāĻ§ āĻ°āĻŋāĻŸāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨āĻ“āĨ¤ āĻāĻŸāĻžāĻ‡
āĻĻā§‡āĻ–āĻ¤ā§‡ āĻšāĻŦā§‡ āĻ•āĻŋāĻ¨āĻž āĻ­ā§āĻ˛(3) āĻ¸ā§āĻĒāĻˇā§āĻŸāĻ­āĻžāĻŦā§‡ āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡.

ungetc(3)
āĻ¯āĻĻāĻŋāĻ“ ANSI C āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦā§āĻ¯āĻžāĻ•āĻ†āĻĒā§‡āĻ° āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻ•āĻŸāĻŋ āĻāĻ•āĻ• āĻ…āĻ•ā§āĻˇāĻ° āĻŦāĻžāĻ§ā§āĻ¯āĻ¤āĻžāĻŽā§‚āĻ˛āĻ• āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻāĻŸāĻŋ āĻŽā§‹āĻĄāĻŧ āĻ¨ā§‡āĻ¯āĻŧ
āĻ†āĻ‰āĻŸ āĻ¯ā§‡ [e]glibc āĻ†āĻ°ā§‹ āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§‡āĻ¯āĻŧ... āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ¤āĻžāĻ° āĻŽāĻžāĻ¨ā§‡ āĻāĻŸāĻŋ ENOMEM āĻāĻ° āĻ¸āĻžāĻĨā§‡ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻāĻŸāĻž āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡
āĻāĻ›āĻžāĻĄāĻŧāĻžāĻ“ āĻ¯āĻĻāĻŋ EBADF āĻāĻ° āĻ¸āĻžāĻĨā§‡ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧ fp āĻœāĻžāĻ˛ āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻ•āĻ āĻŋāĻ¨, āĻ¯āĻĻāĻŋ āĻ†āĻĒāĻ¨āĻŋ EOF āĻĒāĻžāĻ¸ āĻ•āĻ°ā§‡āĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋ
āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ˜āĻŸā§‡, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ¸ā§‡āĻŸ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻžāĨ¤

libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻ¸āĻ āĻŋāĻ•āĻ­āĻžāĻŦā§‡ āĻāĻ‡ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ¸āĻ¨āĻžāĻ•ā§āĻ¤ āĻ•āĻ°ā§‡, āĻāĻŽāĻ¨āĻ•āĻŋ āĻāĻŽāĻ¨ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡āĻ“ āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡
āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŽāĻžāĻ¨ āĻ–āĻžāĻ°āĻžāĻĒāĻ­āĻžāĻŦā§‡ āĻ¨āĻĨāĻŋāĻ­ā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¯āĻĻāĻŋ āĻ¸āĻŦ.

ENOSPC, āĻ¨āĻž āĻ¸ā§āĻĨāĻžāĻ¨ āĻŦāĻžāĻŽ on āĻ¯āĻ¨ā§āĻ¤ā§āĻ°
āĻ¯āĻ–āĻ¨ āĻāĻ‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‡āĻ˛ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‡āĻ˛āĻ•ā§‡ āĻŦā§‹āĻāĻžāĻ¯āĻŧ, āĻ¤āĻ–āĻ¨ libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻŽāĻžāĻ‰āĻ¨ā§āĻŸāĻŸāĻŋ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻŸ āĻ•āĻ°ā§‡
āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¸āĻš āĻĢāĻžāĻ‡āĻ˛ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸāĨ¤ āĻāĻ‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ° āĻ‰ā§ŽāĻ¸ āĻ…āĻ¨ā§‡āĻ• āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨
āĻĒāĻ°āĻŋāĻˇā§āĻ•āĻžāĻ°āĨ¤
āĻ˛āĻŋāĻ–ā§āĻ¨(fildes = 1 "āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ", data = 0xbfff2340, data_size = 5) āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ•ā§‹āĻ¨ā§‹ āĻ¸ā§āĻĨāĻžāĻ¨ āĻ…āĻŦāĻļāĻŋāĻˇā§āĻŸ āĻ¨ā§‡āĻ‡
āĻĄāĻŋāĻ­āĻžāĻ‡āĻ¸ā§‡ (28, ENOSPC) āĻ•āĻžāĻ°āĻŖ āĻĢāĻžāĻ‡āĻ˛ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡ āĻĢāĻžāĻ‡āĻ˛āĻ—ā§āĻ˛āĻŋ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ ("/ āĻšā§‹āĻŽ") āĻ¨āĻžāĻ‡
āĻĄā§‡āĻŸāĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻ°āĻ“ āĻœāĻžāĻ¯āĻŧāĻ—āĻž
āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻ†āĻ°āĻ“ āĻŦāĻŋāĻļā§‡āĻˇ āĻĄāĻŋāĻ­āĻžāĻ‡āĻ¸ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ—ā§āĻ˛āĻŋ āĻĄāĻŋāĻ­āĻžāĻ‡āĻ¸āĻŸāĻŋ āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻŦā§‡ āĻŦāĻ˛ā§‡ āĻ†āĻļāĻž āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡
āĻ¨āĻžāĻŽ āĻāĻŦāĻ‚ āĻĄāĻŋāĻ­āĻžāĻ‡āĻ¸ā§‡āĻ° āĻĒā§āĻ°āĻ•ā§ƒāĻ¤ āĻ†āĻ•āĻžāĻ°āĨ¤

EROFS, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒāĻžāĻ āĻ¯ā§‹āĻ—ā§āĻ¯ āĻĢāĻžāĻ‡āĻ˛ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ
āĻ¯āĻ–āĻ¨ āĻāĻ‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‡āĻ˛ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‡āĻ˛āĻ•ā§‡ āĻŦā§‹āĻāĻžāĻ¯āĻŧ, āĻ¤āĻ–āĻ¨ libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻŽāĻžāĻ‰āĻ¨ā§āĻŸāĻŸāĻŋ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻŸ āĻ•āĻ°ā§‡
āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¸āĻš āĻĢāĻžāĻ‡āĻ˛ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸāĨ¤ āĻāĻ‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ° āĻ‰ā§ŽāĻ¸ āĻ…āĻ¨ā§‡āĻ• āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨
āĻĒāĻ°āĻŋāĻˇā§āĻ•āĻžāĻ°āĨ¤

āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻ†āĻ°āĻ“ āĻŦāĻŋāĻļā§‡āĻˇ āĻĄāĻŋāĻ­āĻžāĻ‡āĻ¸ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ—ā§āĻ˛āĻŋ āĻĄāĻŋāĻ­āĻžāĻ‡āĻ¸āĻŸāĻŋ āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻŦā§‡ āĻŦāĻ˛ā§‡ āĻ†āĻļāĻž āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡
āĻ¨āĻžāĻŽ āĻāĻŦāĻ‚ āĻĒā§āĻ°āĻ•āĻžāĻ°āĨ¤
open(pathname = "/dev/fd0", O_RDWR, 0666) āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒāĻ āĻ¨āĻ¯ā§‹āĻ—ā§āĻ¯ āĻĢāĻžāĻ‡āĻ˛ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ (30, EROFS)
āĻ•āĻžāĻ°āĻŖ āĻĢā§āĻ˛āĻĒāĻŋ āĻĄāĻŋāĻ¸ā§āĻ•ā§‡ āĻ°āĻžāĻ‡āĻŸ āĻ¸ā§āĻ°āĻ•ā§āĻˇāĻž āĻŸā§āĻ¯āĻžāĻŦ āĻ¸ā§‡āĻŸ āĻ†āĻ›ā§‡

...āĻ•āĻžāĻ°āĻŖ āĻāĻ•āĻŸāĻŋ CD-ROM āĻ˛ā§‡āĻ–āĻžāĻ° āĻ¯ā§‹āĻ—ā§āĻ¯ āĻ¨āĻ¯āĻŧ
...āĻ•āĻžāĻ°āĻŖ āĻŽā§‡āĻŽāĻ°āĻŋ āĻ•āĻžāĻ°ā§āĻĄā§‡ āĻ°āĻžāĻ‡āĻŸ āĻ¸ā§āĻ°āĻ•ā§āĻˇāĻž āĻŸā§āĻ¯āĻžāĻŦ āĻ¸ā§‡āĻŸ āĻ†āĻ›ā§‡
...āĻ•āĻžāĻ°āĻŖ ÂŊ āĻ‡āĻžā§āĻšāĻŋ āĻŽā§āĻ¯āĻžāĻ—āĻ¨ā§‡āĻŸāĻŋāĻ• āĻŸā§‡āĻĒā§‡ āĻ˛ā§‡āĻ–āĻžāĻ° āĻ°āĻŋāĻ‚ āĻ¨ā§‡āĻ‡

āĻ¨āĻžāĻŽāĻžāĻ¨ā§āĻ¤āĻ°
āĻ¸āĻžāĻ°ā§āĻœāĻžāĻ°āĻŋāĻ° āĻ¨āĻžāĻŽāĻžāĻ¨ā§āĻ¤āĻ°(2) āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ…āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻŦāĻž āĻ¨āĻžāĻŽ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻāĻŸāĻŋ āĻ¸āĻ°āĻžāĻ¨ā§‹
āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻšāĻ˛ā§‡ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§‡āĨ¤ āĻ¯āĻĻāĻŋ āĻ—āĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻĒāĻĨā§‡āĻ° āĻ¨āĻžāĻŽāĻŸāĻŋ āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡āĻ‡ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĨāĻžāĻ•ā§‡ āĻ¤āĻŦā§‡ āĻāĻŸāĻŋ āĻšāĻŦā§‡
āĻĒāĻžāĻ°āĻŽāĻžāĻŖāĻŦāĻŋāĻ•āĻ­āĻžāĻŦā§‡ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻŋāĻ¤ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¯āĻžāĻ¤ā§‡ āĻāĻŽāĻ¨ āĻ•ā§‹āĻ¨ āĻŦāĻŋāĻ¨ā§āĻĻā§ āĻ¨āĻž āĻĨāĻžāĻ•ā§‡ āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ…āĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ•āĻ°āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ
āĻ…ā§āĻ¯āĻžāĻ•ā§āĻ¸ā§‡āĻ¸ āĻāĻŸāĻŋ āĻ…āĻ¨ā§āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻ–ā§āĻāĻœā§‡ āĻĒāĻžāĻŦā§‡āĻ¨āĨ¤

āĻ¤āĻŦā§‡ āĻ¸ā§€āĻŽāĻžāĻŦāĻĻā§āĻ§āĻ¤āĻž āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡: āĻ†āĻĒāĻ¨āĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ…āĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ° āĻ‰āĻĒāĻ°ā§‡ āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ° āĻ¨āĻžāĻŽ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨
āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¯āĻĻāĻŋ āĻ—āĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ–āĻžāĻ˛āĻŋ āĻ¨āĻž āĻĨāĻžāĻ•ā§‡āĨ¤
āĻĒā§āĻ¨āĻƒāĻ¨āĻžāĻŽāĻ•āĻ°āĻŖ(oldpath = "foo", newpath = "bar") āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ–āĻžāĻ˛āĻŋ āĻ¨āĻ¯āĻŧ (39,
ENOTEMPTY) āĻ•āĻžāĻ°āĻŖ newpath āĻāĻ•āĻŸāĻŋ āĻ–āĻžāĻ˛āĻŋ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨āĻ¯āĻŧ; āĻ…āĻ°ā§āĻĨāĻžā§Ž, āĻāĻ¤ā§‡ āĻāĻ¨ā§āĻŸā§āĻ°āĻŋ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡
āĻ†āĻ° āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ "." āĻāĻŦāĻ‚ ".."
āĻ†āĻĒāĻ¨āĻŋ āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¨-āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ° āĻ‰āĻĒāĻ°ā§‡ āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋāĻ° āĻ¨āĻžāĻŽ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŦā§‡āĻ¨ āĻ¨āĻžāĨ¤
āĻĒā§āĻ¨āĻƒāĻ¨āĻžāĻŽāĻ•āĻ°āĻŖ(oldpath = "foo", newpath = "bar") āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨āĻ¯āĻŧ (20, ENOTDIR)
āĻ•āĻžāĻ°āĻŖ oldpath āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ newpath āĻāĻ•āĻŸāĻŋ āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻĢāĻžāĻ‡āĻ˛, āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨āĻ¯āĻŧ
āĻŦāĻž āĻŦāĻŋāĻĒāĻ°ā§€āĻ¤ āĻ…āĻ¨ā§āĻŽā§‹āĻĻāĻŋāĻ¤
āĻĒā§āĻ¨āĻƒāĻ¨āĻžāĻŽāĻ•āĻ°āĻŖ(oldpath = "foo", newpath = "bar") āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ (21, EISDIR)
āĻ•āĻžāĻ°āĻŖ newpath āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ oldpath āĻāĻ•āĻŸāĻŋ āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻĢāĻžāĻ‡āĻ˛, āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ¨āĻ¯āĻŧ

āĻāĻŸāĻŋ āĻ…āĻŦāĻļā§āĻ¯āĻ‡ libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋāĻ° āĻ•āĻžāĻœāĻ•ā§‡ āĻ†āĻ°āĻ“ āĻœāĻŸāĻŋāĻ˛ āĻ•āĻ°ā§‡ āĻ¤ā§‹āĻ˛ā§‡, āĻ•āĻžāĻ°āĻŖ
āĻ˛āĻŋāĻ™ā§āĻ•āĻŽā§āĻ•ā§āĻ¤(āĻāĻ•ā§āĻ¸āĻāĻ¨āĻāĻŽāĻāĻ•ā§āĻ¸) āĻŦāĻž āĻ•āĻžāĻ›ā§‡ rmdir(2) āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻšāĻŋāĻ¤āĻ­āĻžāĻŦā§‡ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ āĻ¨āĻžāĻŽāĻžāĻ¨ā§āĻ¤āĻ°(2), āĻāĻŦāĻ‚ āĻ¤āĻžāĻ‡ āĻ¸āĻŦ
āĻ˛āĻŋāĻ™ā§āĻ•āĻŽā§āĻ•ā§āĻ¤(āĻāĻ•ā§āĻ¸āĻāĻ¨āĻāĻŽāĻāĻ•ā§āĻ¸) āĻŦāĻž āĻ•āĻžāĻ›ā§‡ rmdir(2) āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ¸āĻ¨āĻžāĻ•ā§āĻ¤ āĻāĻŦāĻ‚ āĻĒāĻ°āĻŋāĻšāĻžāĻ˛āĻ¨āĻž āĻ•āĻ°āĻž āĻ†āĻŦāĻļā§āĻ¯āĻ•, āĻĒāĻžāĻļāĻžāĻĒāĻžāĻļāĻŋ.

dup2
āĻ¸āĻžāĻ°ā§āĻœāĻžāĻ°āĻŋāĻ° dup2(2) āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻāĻ•āĻŸāĻŋ āĻĻā§āĻŦāĻŋāĻ¤ā§€āĻ¯āĻŧ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻ•āĻžāĻ°ā§€ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻ¤ā§‡ āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻ¯āĻŧ āĻ¯āĻž āĻ°ā§‡āĻĢāĻžāĻ°ā§‡āĻ¨ā§āĻ¸ āĻ•āĻ°ā§‡
āĻĒā§āĻ°āĻĨāĻŽ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻ•āĻžāĻ°ā§€ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻāĻ•āĻ‡ āĻŦāĻ¸ā§āĻ¤ā§āĨ¤ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻŸāĻŋ āĻļā§‡āĻ˛ āĻ‡āĻ¨āĻĒā§āĻŸ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻ¯āĻŧ
āĻāĻŦāĻ‚ āĻ†āĻ‰āĻŸāĻĒā§āĻŸ āĻĒā§āĻ¨āĻ°ā§āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļāĨ¤

āĻŽāĻœāĻžāĻ° āĻŦā§āĻ¯āĻžāĻĒāĻžāĻ° āĻšāĻ˛ā§‹, āĻ āĻŋāĻ• āĻ¯ā§‡āĻŽāĻ¨ āĻ¨āĻžāĻŽāĻžāĻ¨ā§āĻ¤āĻ°(2) āĻĒāĻžāĻ°āĻŽāĻžāĻŖāĻŦāĻŋāĻ•āĻ­āĻžāĻŦā§‡ āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻ‰āĻĒāĻ°ā§‡ āĻ¨āĻžāĻŽ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡
āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĢāĻžāĻ‡āĻ˛ āĻāĻŦāĻ‚ āĻĒā§āĻ°āĻžāĻ¨ā§‹ āĻĢāĻžāĻ‡āĻ˛ āĻ¸āĻ°āĻžāĻ¨, dup2(2) āĻāĻŸāĻŋ āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡āĻ‡ āĻ–ā§‹āĻ˛āĻž āĻĢāĻžāĻ‡āĻ˛ā§‡ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡
āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻ•āĻžāĻ°ā§€āĨ¤

āĻ†āĻŦāĻžāĻ°, āĻāĻŸāĻŋ libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋāĻ° āĻ•āĻžāĻœāĻ•ā§‡ āĻ†āĻ°āĻ“ āĻœāĻŸāĻŋāĻ˛ āĻ•āĻ°ā§‡ āĻ¤ā§‹āĻ˛ā§‡, āĻ•āĻžāĻ°āĻŖ āĻ˜āĻ¨āĻŋāĻˇā§āĻ (2)
āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻšāĻŋāĻ¤āĻ­āĻžāĻŦā§‡ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ dup2(2), āĻāĻŦāĻ‚ āĻ¤āĻžāĻ‡ āĻ¸āĻŦ āĻ˜āĻ¨āĻŋāĻˇā§āĻ (2) āĻāĻ° āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻšāĻ¤ā§‡ āĻšāĻŦā§‡
āĻ¸āĻ¨āĻžāĻ•ā§āĻ¤ āĻ•āĻ°āĻž āĻāĻŦāĻ‚ āĻĒāĻ°āĻŋāĻšāĻžāĻ˛āĻ¨āĻž āĻ•āĻ°āĻž, āĻĒāĻžāĻļāĻžāĻĒāĻžāĻļāĻŋ.

āĻ…ā§āĻ¯āĻžāĻĄāĻ­ā§‡āĻžā§āĻšāĻžāĻ°āĻ¸ IN āĻ†āĻ‡āĻ“āĻ¸āĻŋāĻŸāĻŋāĻāĻ˛ āĻ¸āĻžāĻĒā§‹āĻ°ā§āĻŸ


āĻ¸āĻžāĻ°ā§āĻœāĻžāĻ°āĻŋāĻ° ioctls(2) āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻĄāĻŋāĻ­āĻžāĻ‡āĻ¸ āĻĄā§āĻ°āĻžāĻ‡āĻ­āĻžāĻ° āĻ˛ā§‡āĻ–āĻ•āĻĻā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¯ā§‹āĻ—āĻžāĻ¯ā§‹āĻ— āĻ•āĻ°āĻžāĻ° āĻāĻ•āĻŸāĻŋ āĻ‰āĻĒāĻžāĻ¯āĻŧ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻ•āĻ°ā§‡
āĻ‡āĻ‰āĻœāĻžāĻ°-āĻ¸ā§āĻĒā§‡āĻ¸ āĻ¯āĻž āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ API-āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻŽāĻžāĻĒāĻ¸āĻ‡ āĻ•āĻ°ā§‡ āĻ¨āĻžāĨ¤ āĻĻā§‡āĻ–āĻž ioctl_list(2).

āĻĒāĻžāĻ ā§‹āĻĻā§āĻ§āĻžāĻ°āĻ¤āĻž āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻ¨āĻžāĻŽā§āĻŦāĻžāĻ°
āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ°āĻ¸āĻ‚āĻ•ā§āĻˇā§‡āĻĒ āĻĨā§‡āĻ•ā§‡ āĻĻā§‡āĻ–ā§āĻ¨ ioctls(2) āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻĢā§‡āĻ¸, āĻāĻ•āĻŸāĻŋ āĻŦāĻĄāĻŧ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻ¸ā§€āĻŽ āĻšāĻ¤ā§‡ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻŋāĻ¤ āĻšāĻŦā§‡
āĻ¸āĻŽā§āĻ­āĻžāĻŦā§āĻ¯ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻž ioctls(2) āĻ…āĻ¨ā§āĻ°ā§‹āĻ§āĨ¤ āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ­āĻŋāĻ¨ā§āĻ¨ ioctls(2) āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ°āĻ­āĻžāĻŦā§‡
āĻ…āĻ¨ā§āĻ¯ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ•ā§‹āĻ¨ā§‹ āĻĒā§āĻ°āĻ•āĻžāĻ°-āĻ¨āĻŋāĻ°āĻžāĻĒāĻ¤ā§āĻ¤āĻž āĻ›āĻžāĻĄāĻŧāĻžāĻ‡ - āĻ•āĻŽā§āĻĒāĻžāĻ‡āĻ˛āĻžāĻ° āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¨āĻž
āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽāĻžāĻ° āĻāĻ‡ āĻ…āĻ§āĻŋāĻ•āĻžāĻ° āĻĒā§‡āĻ¤ā§‡. āĻāĻ° āĻĒā§‡āĻ›āĻ¨ā§‡ āĻ¸āĻŽā§āĻ­āĻŦāĻ¤ āĻāĻŸāĻžāĻ‡ āĻ›āĻŋāĻ˛ āĻĒā§āĻ°ā§‡āĻ°āĻŖāĻž tcflush(3) āĻāĻŦāĻ‚
āĻŦāĻ¨ā§āĻ§ā§āĻĻā§‡āĻ°āĨ¤

āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ• āĻ§āĻžāĻ°āĻŖāĻž āĻšāĻ˛ āĻ¯ā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻĄāĻŋāĻ•ā§‹āĻĄ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ ioctls(2) āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻļāĻžāĻ˛ āĻ¸ā§āĻ‡āĻš āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§
āĻŦāĻŋāĻŦā§ƒāĻ¤āĻŋ āĻāĻŸāĻŋ āĻ…āĻ¸āĻŽā§āĻ­āĻžāĻŦā§āĻ¯ āĻšāĻ¤ā§‡ āĻĻā§‡āĻ–āĻž āĻ¯āĻžāĻšā§āĻ›ā§‡ āĻ•āĻžāĻ°āĻŖ āĻāĻ•āĻœāĻ¨ āĻ–ā§āĻŦ āĻĻā§āĻ°ā§āĻ¤ āĻ†āĻŦāĻŋāĻˇā§āĻ•āĻžāĻ° āĻ•āĻ°ā§‡ āĻ¯ā§‡ āĻāĻŸāĻŋ
āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻšā§‡āĻĄāĻžāĻ° āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻž āĻ…āĻ¸āĻŽā§āĻ­āĻŦ āĻ¯āĻž āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ•āĻ°ā§‡ ioctls(2)
āĻ…āĻ¨ā§āĻ°ā§‹āĻ§, āĻ•āĻžāĻ°āĻŖ āĻ¤āĻžāĻĻā§‡āĻ° āĻāĻ•ā§‡ āĻ…āĻĒāĻ°ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸ā§āĻ¨ā§āĻĻāĻ°āĻ­āĻžāĻŦā§‡ āĻ–ā§‡āĻ˛āĻ¤ā§‡ āĻ…āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻšāĻ¯āĻŧāĨ¤

āĻāĻ•āĻŸāĻŋ āĻ—āĻ­ā§€āĻ° āĻĻā§ƒāĻˇā§āĻŸāĻŋāĻ­āĻ™ā§āĻ—āĻŋ āĻĒā§āĻ°āĻ•āĻžāĻļ āĻ•āĻ°ā§‡ āĻ¯ā§‡ "āĻŦā§āĻ¯āĻ•ā§āĻ¤āĻŋāĻ—āĻ¤" āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻ¨āĻŽā§āĻŦāĻ° āĻāĻŦāĻ‚ āĻĄāĻŋāĻ­āĻžāĻ‡āĻ¸ā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻĒāĻ°āĻŋāĻ¸āĻ° āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ā§ˇ
āĻĄā§āĻ°āĻžāĻ‡āĻ­āĻžāĻ° āĻ˛ā§‡āĻ–āĻ•āĻĻā§‡āĻ° āĻ¤āĻžāĻĻā§‡āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻ‰āĻ¤ā§āĻ¸āĻžāĻšāĻŋāĻ¤ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻ° āĻŽāĻžāĻ¨ā§‡ āĻ…āĻ¨ā§‡āĻ• āĻŦāĻĄāĻŧ āĻ¸āĻŽā§āĻ­āĻŦ
āĻ…āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§‡ āĻ¸ā§āĻĒāĻˇā§āĻŸ āĻšāĻ“āĻ¯āĻŧāĻžāĻ° āĻšā§‡āĻ¯āĻŧā§‡ āĻ…āĻ¸ā§āĻĒāĻˇā§āĻŸ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻ¨āĻŽā§āĻŦāĻ° āĻ¸āĻš āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ā§‡āĻ° āĻ¸ā§‡āĻŸāĨ¤ āĻāĻ›āĻžāĻĄāĻŧāĻžāĻ“,
āĻ•āĻŋāĻ›ā§ āĻāĻ¤āĻŋāĻšāĻžāĻ¸āĻŋāĻ• āĻ…āĻ¸ā§āĻĒāĻˇā§āĻŸāĻ¤āĻžāĻ“ āĻ†āĻ›ā§‡āĨ¤

āĻ†āĻŽāĻ°āĻž āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡āĻ‡ āĻœāĻžāĻ¨āĻ¤āĻžāĻŽ āĻ¯ā§‡ āĻ¸ā§āĻ‡āĻšāĻŸāĻŋ āĻ…āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ° āĻ›āĻŋāĻ˛, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ–āĻ¨ āĻ†āĻŽāĻ°āĻž āĻœāĻžāĻ¨āĻŋ āĻ¯ā§‡ āĻāĻŸāĻŋ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨ āĻ•āĻ°āĻ¤ā§‡
āĻ‰āĻĒāĻ¯ā§āĻ•ā§āĻ¤ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ā§‡āĻ° āĻ¨āĻžāĻŽ āĻāĻŦāĻ‚ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŦāĻŋāĻŦā§‡āĻšāĻ¨āĻž āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡ āĻ¨āĻž āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻ¨āĻŽā§āĻŦāĻ° āĻ•āĻŋāĻ¨ā§āĻ¤ā§
āĻāĻ›āĻžāĻĄāĻŧāĻžāĻ“ āĻĢāĻžāĻ‡āĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻ•āĻžāĻ°ā§€āĨ¤

āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ ioctls(2) libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ¸āĻžāĻĒā§‹āĻ°ā§āĻŸ āĻāĻ° āĻāĻ•āĻŸāĻŋ āĻŸā§‡āĻŦāĻŋāĻ˛ āĻ†āĻ›ā§‡
āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļāĻ• ioctls(2) āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻ•āĻžāĻ°ā§€āĻĻā§‡āĻ° āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻ•āĻ°ā§āĻ¨āĨ¤ āĻāĻ‡ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻ•āĻžāĻ°ā§€āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻāĻšā§āĻ›āĻŋāĻ• āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤
āĻāĻ•āĻŸāĻŋ āĻĻā§āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻž āĻ¨āĻŋāĻ°āĻ¸āĻ¨ āĻĢāĻžāĻ‚āĻļāĻ¨ āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļāĻ•.

āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻ†āĻ¸āĻ˛ā§‡ āĻāĻ•āĻŸāĻŋ āĻĒā§ƒāĻĨāĻ• āĻ‰ā§ŽāĻ¸ āĻĢāĻžāĻ‡āĻ˛ā§‡ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻšāĻ¯āĻŧ, āĻ¯āĻžāĻ¤ā§‡ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ
āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻĢāĻžāĻ‡āĻ˛āĻ—ā§āĻ˛āĻŋ āĻ…āĻ¨ā§āĻ¯āĻĻā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸ā§āĻ¨ā§āĻĻāĻ°āĻ­āĻžāĻŦā§‡ āĻ–ā§‡āĻ˛āĻžāĻ° āĻŦāĻžāĻ§ā§āĻ¯āĻŦāĻžāĻ§āĻ•āĻ¤āĻž āĻĨā§‡āĻ•ā§‡ āĻŽā§āĻ•ā§āĻ¤āĻŋ āĻĒāĻžāĻ¯āĻŧāĨ¤

āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻ¤ā§āĻŦ
libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋāĻ° āĻĒāĻŋāĻ›āĻ¨ā§‡ āĻĻāĻ°ā§āĻļāĻ¨ āĻ¯āĻ¤āĻŸāĻž āĻ¤āĻĨā§āĻ¯ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ
āĻ¸āĻŽā§āĻ­āĻŦ, āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻ¸āĻ āĻŋāĻ• āĻ‰āĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž āĻ¸āĻšāĨ¤ āĻāĻ° āĻŦā§āĻ¯āĻžāĻĒāĻžāĻ°ā§‡
ioctls(2) āĻāĻ° āĻ…āĻ°ā§āĻĨ āĻ¸āĻ āĻŋāĻ• āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻ¨āĻŽā§āĻŦāĻ° (āĻ¨āĻžāĻŽ āĻĻā§āĻŦāĻžāĻ°āĻž) āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ āĻ¸āĻ āĻŋāĻ• (āĻŦāĻž
āĻ…āĻ¨ā§āĻ¤āĻ¤ āĻĻāĻ°āĻ•āĻžāĻ°ā§€) āĻ¤ā§ƒāĻ¤ā§€āĻ¯āĻŧ āĻ†āĻ°ā§āĻ—ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻ‰āĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĨ¤

āĻ¸āĻžāĻ°ā§āĻœāĻžāĻ°āĻŋāĻ° ioctls(2) āĻĒā§āĻ°ā§‹āĻŸā§‹āĻŸāĻžāĻ‡āĻĒ āĻāĻ‡ āĻŽāĻ¤ āĻĻā§‡āĻ–āĻžāĻ¯āĻŧ:
int ioctl(int fildes, int āĻ…āĻ¨ā§āĻ°ā§‹āĻ§, ...);
āĻ¯āĻž āĻ†āĻĒāĻ¨āĻžāĻ° āĻŸāĻžāĻ‡āĻĒ-āĻ¸ā§‡āĻĢāĻŸāĻŋ āĻ…ā§āĻ¯āĻžāĻ˛āĻžāĻ°ā§āĻŽ āĻŦāĻ¨ā§āĻ§ āĻ•āĻ°āĻž āĻ‰āĻšāĻŋāĻ¤āĨ¤ [e]glibc-āĻāĻ° āĻ…āĻ­ā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§€āĻŖ, āĻāĻŸāĻŋ āĻĒāĻ°āĻŋāĻŖāĻ¤ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡
āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻ†āĻ•āĻžāĻ°ā§‡:
int __ioctl(int fildes, int request, long arg);
int __ioctl(int fildes, int āĻ…āĻ¨ā§āĻ°ā§‹āĻ§, void *arg);
āĻāĻŦāĻ‚ āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻ¸āĻŋāĻ¸ā§āĻ•āĻ˛ āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻĢā§‡āĻ¸ āĻ†āĻļāĻž āĻ•āĻ°ā§‡
asmlinkage āĻ˛āĻ‚ sys_ioctl(āĻ…āĻ¸ā§āĻŦāĻžāĻ•ā§āĻˇāĻ°āĻŋāĻ¤ int āĻĢāĻŋāĻ˛ā§āĻĄāĻ¸, āĻ¸ā§āĻŦāĻžāĻ•ā§āĻˇāĻ°āĻŦāĻŋāĻšā§€āĻ¨ int āĻ…āĻ¨ā§āĻ°ā§‹āĻ§, āĻ¸ā§āĻŦāĻžāĻ•ā§āĻˇāĻ°āĻŦāĻŋāĻšā§€āĻ¨ āĻĻā§€āĻ°ā§āĻ˜
arg);
āĻ¤ā§ƒāĻ¤ā§€āĻ¯āĻŧ āĻ¯ā§āĻ•ā§āĻ¤āĻŋāĻ° āĻšāĻ°āĻŽ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§€āĻ˛āĻ¤āĻž āĻāĻ•āĻŸāĻŋ āĻšā§āĻ¯āĻžāĻ˛ā§‡āĻžā§āĻœ, āĻ¯āĻ–āĻ¨ libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ
āĻ¯ā§‡ āĻ¤ā§ƒāĻ¤ā§€āĻ¯āĻŧ āĻ¯ā§āĻ•ā§āĻ¤āĻŋ āĻāĻ•āĻŸāĻŋ āĻ‰āĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž āĻŽā§āĻĻā§āĻ°āĻŖ āĻ•āĻ°āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°ā§‡. āĻ¤āĻŦā§‡ āĻāĻ•āĻŦāĻžāĻ° āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻ¨āĻŽā§āĻŦāĻ°
āĻĻā§āĻŦā§āĻ¯āĻ°ā§āĻĨāĻšā§€āĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋāĻ° ioctl āĻŸā§‡āĻŦāĻŋāĻ˛ā§‡āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻāĻ¨ā§āĻŸā§āĻ°āĻŋāĻ¤ā§‡ āĻāĻ•āĻŸāĻŋ āĻ†āĻ›ā§‡
āĻ•āĻžāĻ¸ā§āĻŸāĻŽ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻŸ_āĻĄā§‡āĻŸāĻž āĻĢāĻžāĻ‚āĻļāĻ¨ (āĻ“āĻ“ āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ˛āĻŋ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡)āĨ¤

āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖā§‡ āĻ•āĻŽ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ†āĻ›ā§‡āĨ¤ āĻāĻ•āĻŦāĻžāĻ° āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻ¨āĻŽā§āĻŦāĻ°
āĻĻā§āĻŦā§āĻ¯āĻ°ā§āĻĨāĻšā§€āĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, libexplain āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋāĻ° ioctl āĻŸā§‡āĻŦāĻŋāĻ˛ā§‡āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻāĻ¨ā§āĻŸā§āĻ°āĻŋāĻ° āĻāĻ•āĻŸāĻŋ āĻ•āĻžāĻ¸ā§āĻŸāĻŽ āĻ†āĻ›ā§‡
print_explanation āĻĢāĻžāĻ‚āĻļāĻ¨ (āĻ†āĻŦāĻžāĻ°, OO āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ˛āĻŋ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡)āĨ¤

āĻ¸ā§‡āĻ•āĻļāĻ¨ 2 āĻāĻŦāĻ‚ āĻ¸ā§‡āĻ•āĻļāĻ¨ 3 āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ā§‡āĻ° āĻŦāĻŋāĻĒāĻ°ā§€āĻ¤ā§‡, āĻŦā§‡āĻļāĻŋāĻ°āĻ­āĻžāĻ— ioctls(2) āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ā§‡ āĻ•ā§‹āĻ¨ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ¨ā§‡āĻ‡
āĻ¨āĻĨāĻŋāĻ­ā§āĻ•ā§āĻ¤ āĻāĻ° āĻŽāĻžāĻ¨ā§‡, āĻ­āĻžāĻ˛ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ° āĻŦāĻŋāĻŦāĻ°āĻŖ āĻĻāĻŋāĻ¤ā§‡, āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻĒāĻĄāĻŧāĻ¤ā§‡ āĻšāĻŦā§‡
āĻ†āĻŦāĻŋāĻˇā§āĻ•āĻžāĻ° āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ‰ā§ŽāĻ¸

¡ āĻ•āĻŋ āĻ­ā§āĻ˛(3) āĻŽāĻžāĻ¨ āĻĢā§‡āĻ°āĻ¤ āĻĻā§‡āĻ“āĻ¯āĻŧāĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡, āĻāĻŦāĻ‚

¡ āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ° āĻ•āĻžāĻ°āĻŖāĨ¤

āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻĢāĻžāĻ‚āĻļāĻ¨ āĻ•āĻ˛ āĻĒā§āĻ°ā§‡āĻ°āĻŖā§‡āĻ° OO āĻĒā§āĻ°āĻ•ā§ƒāĻ¤āĻŋāĻ° āĻ•āĻžāĻ°āĻŖā§‡, āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻĒāĻĄāĻŧāĻ¤ā§‡ āĻšāĻŦā§‡
āĻ¸āĻŦ āĻ¸ā§‚āĻ¤ā§āĻ° āĻ¯ā§‡ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ ioctls(2) āĻ…āĻ¨ā§āĻ°ā§‹āĻ§, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻŸāĻž
āĻ†āĻļāĻž āĻ•āĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¯ā§‡ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ā§‡āĻ° āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻ¤ā§āĻ°ā§āĻŸāĻŋ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻž āĻāĻŦāĻ‚ āĻ¸ā§‚āĻ•ā§āĻˇā§āĻŽāĻ­āĻžāĻŦā§‡ āĻĨāĻžāĻ•āĻŦā§‡
āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ° āĻ•āĻžāĻ°āĻŖāĨ¤

EINVAL vs āĻ‡āĻ¨ā§‹āĻŸāĻŋ
āĻœāĻ¨ā§āĻ¯ āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋ āĻ†āĻ°āĻ“ āĻ–āĻžāĻ°āĻžāĻĒ ioctls(2) āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ā§‡āĻ° āĻšā§‡āĻ¯āĻŧā§‡ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§, EINVAL āĻāĻŦāĻ‚ āĻ¸āĻš
ENOTTY āĻ‰āĻ­āĻ¯āĻŧāĻ‡ āĻ‡āĻ™ā§āĻ—āĻŋāĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻŦā§āĻ¯āĻŦāĻšā§ƒāĻ¤ āĻšāĻšā§āĻ›ā§‡ āĻ¯ā§‡ āĻāĻ•āĻŸāĻŋ ioctls(2) āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻ¯ā§‡ āĻ…āĻ¨ā§āĻĒāĻ¯ā§āĻ•ā§āĻ¤
āĻĒā§āĻ°āĻ¸āĻ™ā§āĻ—, āĻāĻŦāĻ‚ āĻŽāĻžāĻā§‡ āĻŽāĻžāĻā§‡ ENOSYS, ENOTSUP āĻāĻŦāĻ‚ EOPNOTSUPP (āĻ¸āĻ•ā§‡āĻŸā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ) āĻšāĻŋāĻ¸āĻžāĻŦā§‡
āĻ†āĻŽāĻ°āĻž āĻšāĻŦ. āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ āĻ‰āĻ¤ā§āĻ¸āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¯āĻž āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻ—āĻ¤āĻŋāĻļā§€āĻ˛ āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļ āĻ•āĻ°ā§‡ āĻŦāĻ˛ā§‡ āĻŽāĻ¨ā§‡ āĻšāĻšā§āĻ›ā§‡
āĻĒāĻ°āĻŋāĻˇā§āĻ•āĻžāĻ° āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡āĨ¤ āĻ…āĻ¤āĻŋāĻ°āĻŋāĻ•ā§āĻ¤ āĻŦāĻŋāĻļā§ƒāĻ™ā§āĻ–āĻ˛āĻžāĻ° āĻœāĻ¨ā§āĻ¯, āĻŦāĻŋāĻāĻ¸āĻĄāĻŋ āĻŦāĻŋāĻ­ā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋāĻ¤ā§‡ ENOIOCTL āĻ¯ā§‹āĻ— āĻ•āĻ°ā§‡āĨ¤

āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻāĻ‡ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻŽāĻ¨ā§‹āĻ¯ā§‹āĻ— āĻĻāĻŋāĻ¤ā§‡ āĻšāĻŦā§‡ āĻ¯āĻžāĻ¤ā§‡ āĻ¸ā§‡āĻ—ā§āĻ˛āĻŋ āĻ¸āĻ āĻŋāĻ• āĻšāĻ¯āĻŧ, āĻŦāĻŋāĻļā§‡āĻˇ āĻ•āĻ°ā§‡ā§ˇ
āĻ¯ā§‡āĻšā§‡āĻ¤ā§ EINVAL āĻāĻ• āĻŦāĻž āĻāĻ•āĻžāĻ§āĻŋāĻ• āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ•āĻ˛ āĻ†āĻ°ā§āĻ—ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ° āĻ•āĻĨāĻžāĻ“ āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ– āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤

intptr_t
C99 āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻāĻ•āĻŸāĻŋ āĻĒā§‚āĻ°ā§āĻŖāĻ¸āĻ‚āĻ–ā§āĻ¯āĻžāĻ° āĻ§āĻ°āĻŖāĻ•ā§‡ āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ•āĻ°ā§‡ āĻ¯āĻž āĻ¯ā§‡ āĻ•ā§‹āĻ¨ā§‹ āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸāĻžāĻ° āĻ§āĻ°ā§‡ āĻ°āĻžāĻ–āĻ¤ā§‡ āĻ¸āĻ•ā§āĻˇāĻŽ āĻšāĻŦā§‡
āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻ¤ā§āĻŦ āĻ•ā§āĻˇāĻ¤āĻŋ āĻ›āĻžāĻĄāĻŧāĻžāĨ¤

āĻ‰āĻĒāĻ°ā§‡āĻ° āĻĢāĻžāĻ‚āĻļāĻ¨ syscall āĻĒā§āĻ°ā§‹āĻŸā§‹āĻŸāĻžāĻ‡āĻĒ āĻ­āĻžāĻ˛ āĻ˛ā§‡āĻ–āĻž āĻšāĻŦā§‡
long sys_ioctl(āĻ†āĻ¨āĻ¸āĻžāĻ‡āĻ¨ āĻ•āĻ°āĻž int āĻĢāĻŋāĻ˛ā§āĻĄāĻ¸, āĻ¸ā§āĻŦāĻžāĻ•ā§āĻˇāĻ°āĻŦāĻŋāĻšā§€āĻ¨ int āĻ…āĻ¨ā§āĻ°ā§‹āĻ§, intptr_t arg);
āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻŸāĻŋ āĻšāĻ˛ āĻĄāĻŋāĻ­āĻžāĻ‡āĻ¸-āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻŦāĻž āĻĢāĻžāĻ‡āĻ˛-āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ-āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻœā§āĻžāĻžāĻ¨ā§€āĻ¯āĻŧ āĻ…āĻ¸āĻ™ā§āĻ—āĻ¤āĻŋ
ioctls(2) āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨, āĻ¯ā§‡āĻŽāĻ¨:
long vfs_ioctl(struct file *filp, unsigned int cmd, unsigned long arg);
āĻ¸āĻ‚āĻ–ā§āĻ¯āĻžāĻ—āĻ°āĻŋāĻˇā§āĻ  ioctls(2) āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ā§‡āĻ° āĻ†āĻ¸āĻ˛ā§‡ āĻāĻ•āĻŸāĻŋ int * arg āĻ¤ā§ƒāĻ¤ā§€āĻ¯āĻŧ āĻ†āĻ°ā§āĻ—ā§āĻŽā§‡āĻ¨ā§āĻŸ āĻ†āĻ›ā§‡āĨ¤ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŸāĻž āĻĨāĻžāĻ•āĻžāĻ°
āĻ˜ā§‹āĻˇāĻŋāĻ¤ āĻ˛āĻ‚ āĻ˛āĻŋāĻĄ āĻ•ā§‹āĻĄā§‡ āĻāĻŸāĻŋāĻ•ā§‡ āĻ˛āĻ‚ *āĻ†āĻ°ā§āĻ— āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻŦāĻŋāĻŦā§‡āĻšāĻ¨āĻž āĻ•āĻ°ā§‡āĨ¤ āĻāĻŸāĻŋ 32-āĻŦāĻŋāĻŸā§‡ āĻ¨āĻŋāĻ°ā§€āĻš
(sizeof(long) == sizeof(int)) āĻ•āĻŋāĻ¨ā§āĻ¤ā§ 64-āĻŦāĻŋāĻŸā§‡ āĻ–āĻžāĻ°āĻžāĻĒ (sizeof(long) != sizeof(int))āĨ¤
āĻ…āĻ¨ā§āĻ¤āĻŋāĻŽāĻ¤āĻžāĻ° āĻ‰āĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻ­āĻ° āĻ•āĻ°ā§‡, āĻ†āĻĒāĻ¨āĻŋ āĻ¯ā§‡ āĻŽāĻžāĻ¨ āĻ†āĻļāĻž āĻ•āĻ°ā§‡āĻ¨ āĻ¤āĻž āĻ†āĻĒāĻ¨āĻŋ āĻ•āĻ°ā§‡āĻ¨ āĻŦāĻž āĻĒāĻžāĻ¨ āĻ¨āĻž, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ†āĻĒāĻ¨āĻŋ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻĒāĻžāĻ“āĻ¯āĻŧāĻž
āĻāĻ•āĻŸāĻŋ āĻŽā§‡āĻŽāĻ°āĻŋ āĻ¸ā§āĻ•ā§āĻ°āĻžāĻ‡āĻŦāĻ˛ āĻŦāĻž āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ• āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻŦāĻ˛ āĻĒāĻžāĻļāĻžāĻĒāĻžāĻļāĻŋāĨ¤

āĻāĻ‡ āĻ¸āĻŦ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻ˛ā§‡āĻ–āĻž
int ioctl(int fildes, int āĻ…āĻ¨ā§āĻ°ā§‹āĻ§, ...);
int __ioctl(int fildes, int āĻ…āĻ¨ā§āĻ°ā§‹āĻ§, intptr_t arg);
long sys_ioctl(āĻ†āĻ¨āĻ¸āĻžāĻ‡āĻ¨ āĻ•āĻ°āĻž int āĻĢāĻŋāĻ˛ā§āĻĄāĻ¸, āĻ¸ā§āĻŦāĻžāĻ•ā§āĻˇāĻ°āĻŦāĻŋāĻšā§€āĻ¨ int āĻ…āĻ¨ā§āĻ°ā§‹āĻ§, intptr_t arg);
long vfs_ioctl(struct file *filp, unsigned int cmd, intptr_t arg);
āĻœā§‹āĻ° āĻĻā§‡āĻ¯āĻŧ āĻ¯ā§‡ āĻĒā§‚āĻ°ā§āĻŖāĻ¸āĻ‚āĻ–ā§āĻ¯āĻž āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻ•āĻŸāĻŋ āĻĒā§‚āĻ°ā§āĻŖāĻ¸āĻ‚āĻ–ā§āĻ¯āĻž āĻ¯āĻž āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻāĻ•āĻŸāĻŋ āĻĒāĻ°āĻŋāĻŽāĻžāĻŖā§‡āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻ¤ā§āĻŦ āĻ•āĻ°ā§‡
āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻāĻ•āĻŸāĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•āĻšā§€āĻ¨ āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸāĻžāĻ° āĻŸāĻžāĻ‡āĻĒāĨ¤

āĻ‰āĻĒāĻ¸āĻ‚āĻšāĻžāĻ°


libexplain āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§āĻ¨, āĻ†āĻĒāĻ¨āĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻ•āĻžāĻ°ā§€āĻ°āĻž āĻāĻŸāĻŋ āĻĒāĻ›āĻ¨ā§āĻĻ āĻ•āĻ°āĻŦā§‡āĨ¤

āĻ•āĻĒāĻŋāĻ°āĻžāĻ‡āĻŸ


libexplain āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ 1.4
āĻ•āĻĒāĻŋāĻ°āĻžāĻ‡āĻŸ (āĻ¸āĻŋ) 2008, 2009, 2010, 2011, 2012, 2013, 2014 āĻĒāĻŋāĻŸāĻžāĻ° āĻŽāĻŋāĻ˛āĻžāĻ°

onworks.net āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž_lca2010 āĻ…āĻ¨āĻ˛āĻžāĻ‡āĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§āĻ¨


āĻŦāĻŋāĻ¨āĻžāĻŽā§‚āĻ˛ā§āĻ¯ā§‡ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻāĻŦāĻ‚ āĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻŸā§‡āĻļāĻ¨

āĻ‰āĻ‡āĻ¨ā§āĻĄā§‹āĻœ āĻāĻŦāĻ‚ āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ āĻ…ā§āĻ¯āĻžāĻĒ āĻĄāĻžāĻ‰āĻ¨āĻ˛ā§‹āĻĄ āĻ•āĻ°ā§āĻ¨

āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ āĻ•āĻŽāĻžāĻ¨ā§āĻĄāĻ—ā§āĻ˛āĻŋ

  • 1
    aarch64-linux-gnu-gnat
    aarch64-linux-gnu-gnat
    āĻ—ā§āĻ¨āĻžāĻŸ, āĻ—ā§āĻ¨āĻžāĻŸāĻŦāĻŋāĻ¨ā§āĻĄ, āĻ—ā§āĻ¨āĻžāĻŸāĻŦāĻŋāĻ˛, āĻ—ā§āĻ¨ā§āĻ¯āĻžāĻšāĻĒ,
    gnatfind, gnathtml, gnatkr, gnatlink,
    gnatls, gnatmake, gnatprep, gnatpsta,
    gnatpsys, gnatxref - GNAT āĻŸā§āĻ˛āĻŦāĻ•ā§āĻ¸
    āĻŦāĻ°ā§āĻŖāĻ¨āĻž: āĻŽ...
    aarch64-linux-gnu-gnat āĻšāĻžāĻ˛āĻžāĻ¨
  • 2
    aarch64-linux-gnu-gnatbind-5
    aarch64-linux-gnu-gnatbind-5
    āĻ—ā§āĻ¨āĻžāĻŸ, āĻ—ā§āĻ¨āĻžāĻŸāĻŦāĻŋāĻ¨ā§āĻĄ, āĻ—ā§āĻ¨āĻžāĻŸāĻŦāĻŋāĻ˛, āĻ—ā§āĻ¨ā§āĻ¯āĻžāĻšāĻĒ,
    gnatfind, gnathtml, gnatkr, gnatlink,
    gnatls, gnatmake, gnatprep, gnatpsta,
    gnatpsys, gnatxref - GNAT āĻŸā§āĻ˛āĻŦāĻ•ā§āĻ¸
    āĻŦāĻ°ā§āĻŖāĻ¨āĻž: āĻŽ...
    aarch64-linux-gnu-gnatbind-5 āĻšāĻžāĻ˛āĻžāĻ¨
  • 3
    cproto
    cproto
    cproto - C āĻĢāĻžāĻ‚āĻļāĻ¨ āĻĒā§āĻ°ā§‹āĻŸā§‹āĻŸāĻžāĻ‡āĻĒ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§‡
    āĻāĻŦāĻ‚ āĻĢāĻžāĻ‚āĻļāĻ¨ āĻ¸āĻ‚āĻœā§āĻžāĻž āĻ°ā§‚āĻĒāĻžāĻ¨ā§āĻ¤āĻ° ...
    cproto āĻšāĻžāĻ˛āĻžāĻ¨
  • 4
    cps-auth
    cps-auth
    cps-auth - OAuth2 āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨ āĻ•āĻ°ā§āĻ¨
    āĻ•ā§āĻ˛āĻžāĻ‰āĻĄāĻĒā§āĻ°āĻŋāĻ¨ā§āĻŸ-āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻŽāĻžāĻŖā§€āĻ•āĻ°āĻŖ...
    cps-auth āĻšāĻžāĻ˛āĻžāĻ¨
  • 5
    āĻĢāĻžāĻāĻ•4
    āĻĢāĻžāĻāĻ•4
    gap4 - āĻœāĻŋāĻ¨ā§‹āĻŽ āĻ¸āĻŽāĻžāĻŦā§‡āĻļ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ (āĻāĻ° āĻ…āĻ‚āĻļ
    āĻ¸ā§āĻŸā§āĻ¯āĻžāĻĄā§‡āĻ¨ āĻĒā§āĻ¯āĻžāĻ•ā§‡āĻœ) ...
    āĻ°āĻžāĻ¨ āĻĢāĻžāĻāĻ• 4
  • 6
    āĻĢāĻžāĻāĻ•5
    āĻĢāĻžāĻāĻ•5
    gap5 - āĻœāĻŋāĻ¨ā§‹āĻŽ āĻ¸āĻŽāĻžāĻŦā§‡āĻļ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽ (āĻāĻ° āĻ…āĻ‚āĻļ
    āĻ¸ā§āĻŸā§āĻ¯āĻžāĻĄā§‡āĻ¨ āĻĒā§āĻ¯āĻžāĻ•ā§‡āĻœ) ...
    āĻ°āĻžāĻ¨ āĻĢāĻžāĻāĻ• 5
  • āĻ†āĻ°āĻ“ Âģ

Ad