÷ƒ’À;è TeX output 2003.11.26:1333‹ÿÿÿÿ Û_2 ý ~? ÕÁ ýZݺóþÖëI½q½qecss2074¼The–fÑLinux“Plug-and-Pla›ÿwmy“HO˜WTOŽ¤ ®„ØcÕÁGŽŽ¡ó 1ê± ecrm1000¹Da•¸èvid›U S.La“wy“er˜óqLË ecit1000½dave@lafn.org’õk¿¹v0.11,˜maggio˜2000Ž¡Ÿ&°óŒ6 ecss1000¾Un–§,aiuto“pšGer“districa¸èrsi“e“gestire“i“disp˜ositivi“Plug-and-Plaš¸èy‘ÿ*¸.‘g£Come“fa˜r“s€ì“che“il“p˜rop˜rio“sistema“Linux“suppGo˜rti“ilŽ¡Plug-and-Plaš¸èy–ÿ*¸.‘q€T“raduzione–U di“Giovanni“Bo˜rtolozzo“(“óø8‹ ecsi1000¿bGo˜rto“at“pluto.linux.it“¾).ŽŸ(Àœó&Lt$ffffecbx1440ÁIndiceŽ©Øó]fŒ ecbx1000Â1Ž‘ÿIn®>troQÂduzione’€Ó3ŽŽ¤ؼ‘ÿ¹1.1Ž‘%ý¡Cop•¸èyrigh“t,›U marc“hi˜registrati,˜libGeratoria˜e˜ringraziamen“ti‘Ã/‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï3ŽŽ¡‘%ý¡1.1.1Ž‘EûŸCop•¸èyrigh“t–U (in“inglese)‘ÅÕ‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï3ŽŽ¡‘%ý¡1.1.2Ž‘EûŸLibGeratoria‘§µ‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï3ŽŽ¡‘%ý¡1.1.3Ž‘EûŸMarc¸èhi‘U registrati‘SM‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï3ŽŽ¡‘%ý¡1.1.4Ž‘EûŸCrediti‘Š½‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï3ŽŽ¡‘ÿ1.2Ž‘%ý¡Piani–U futuri;“come“aiutare‘S“‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï3ŽŽ¡‘ÿ1.3Ž‘%ý¡Nuo•¸èv“e›U v“ersioni˜di˜questo˜HO“WTO‘Æ«‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï3ŽŽ¦Â2Ž‘ÿCosa–Õdo®>vrebbšQÂe“fare“il“PnP:“allo˜care“risorse-bus’Ç`Â4ŽŽ¡‘ÿ¹2.1Ž‘%ý¡Cos'€è–U il“Plug-and-Pla¸èy“(PnP)?‘Í‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï4ŽŽ¡‘ÿ2.2Ž‘%ý¡Come–U fa“un“computer“pšGer“tro¸èv‘ÿqÐare“i“disp˜ositivi“(e“vicev¸èersa)‘u;‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï4ŽŽ¡‘ÿ2.3Ž‘%ý¡Indirizzi–U I/O,“ecc.‘à›‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï5ŽŽ¡‘ÿ2.4Ž‘%ý¡IRš¸èQ–U “P˜anoramica‘Ä3‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï5ŽŽ¡‘ÿ2.5Ž‘%ý¡Canali‘U DMA‘&Ñü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï6ŽŽ¡‘ÿ2.6Ž‘%ý¡In¸èterv‘ÿqÐalli–U di“memoria‘ o‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï7ŽŽ¡‘ÿ2.7Ž‘%ý¡Risorse–U sia“al“dispGositivš¸èo“c˜he“al“gestore‘€£‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï7ŽŽ¡‘ÿ2.8Ž‘%ý¡Il‘U problema‘ +‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï7ŽŽ¡‘ÿ2.9Ž‘%ý¡Il–U PnP“tro¸èv‘ÿqÐa“i“dispšGositivi“connessi“nelle“p˜orte“serialiI‹‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï8ŽŽ¦Â3Ž‘ÿLa–Õsoluzione“Plug-and-Pla®>y“(PnP)’ǧ8ŽŽ¡‘ÿ¹3.1Ž‘%ý¡In¸ètroGduzione–U al“PnP‘R«‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï8ŽŽ¡‘ÿ3.2Ž‘%ý¡Come–U funziona“(semplicato)‘ß‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï8ŽŽ¡‘ÿ3.3Ž‘%ý¡L'a¸èvvio–U del“PC‘Xï‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï9ŽŽ¡‘ÿ3.4Ž‘%ý¡Bus‘¥S‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?10ŽŽ¡‘ÿ3.5Ž‘%ý¡Lin•¸èux›U dev“e˜gestire˜meglio˜il˜PnP‘ø'‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?10ŽŽ¦Â4Ž‘ÿCongurazione–Õdel“BIOS“PnP’$?î11ŽŽ¡‘ÿ¹4.1Ž‘%ý¡Si–U ha“un“sistema“opGerativ¸èo“PnP?‘ñ‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?11ŽŽ¡‘%ý¡4.1.1Ž‘EûŸInš¸èteropGerabilit€à–U con“Windo˜ws9x‘²‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?11ŽŽŽŽŒ‹* Û_2 ý ~?Ÿ„€ÕÁGŽÂINDICE’¦]!¹2ŽŽ ÕÁ ýV¯‘ÿ4.2Ž‘%ý¡Come–U devš¸èono“essere“con˜trollate“le“risorse?‘ëw‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?12ŽŽ¤ؼ‘ÿ4.3Ž‘%ý¡Reinizializzare–U la“congurazione?‘T³‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?12ŽŽ©ØÂ5Ž‘ÿCome–Õgestire“le“sc®>hede“PnP’.™=12ŽŽ¡‘ÿ¹5.1Ž‘%ý¡Inš¸ètroGduzione–U alla“gestione“delle“sc˜hede“PnP‘€û‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?12ŽŽ¡‘ÿ5.2Ž‘%ý¡Disabilitare–U il“PnP“?‘KŸ‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?13ŽŽ¡‘ÿ5.3Ž‘%ý¡In¸ètrošGduzione–U all'uso“del“BIOS“p˜er“la“congurazione“PnP‘&§‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?13ŽŽ¡‘%ý¡5.3.1Ž‘EûŸIl–U database“ESCD“del“BIOS‘ ‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?14ŽŽ¡‘%ý¡5.3.2Ž‘EûŸUsare–U Windo¸èws“pšGer“imp˜ostare“l'ESCD‘ÖÅ‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?14ŽŽ¡‘%ý¡5.3.3Ž‘EûŸAggiungere–U un“n•¸èuo“v“o›U dispGositiv“o˜(sotto˜Lin“ux˜o˜Windo“ws)‘RÙ‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?15ŽŽ¡‘ÿ5.4Ž‘%ý¡Isapnp–U (parte“degli“isapnptoGols)‘ K‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?15ŽŽ¡‘ÿ5.5Ž‘%ý¡Le–U utilit¸èy“PCI‘ er’zõ17ŽŽ¡‘ÿ¹6.1Ž‘%ý¡In¸ètroGduzione {‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?17ŽŽ¡‘ÿ6.2Ž‘%ý¡Il–U driv¸èer“delle“pGorte“seriali:‘q€setserial#‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?18ŽŽ¡‘ÿ6.3Ž‘%ý¡Gestori–U della“sc¸èheda“audio‘¥u‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?18ŽŽ¡‘%ý¡6.3.1Ž‘EûŸOSS-Lite‘‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?18ŽŽ¡‘%ý¡6.3.2Ž‘EûŸOSS–U (OpGen“Sound“System)“e“ALSA‘€í‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?18ŽŽ¦Â7Ž‘ÿQual–Õ€è“la“mia“congurazione“corren®>te?’ù=I18ŽŽ¡‘ÿ¹7.1Ž‘%ý¡Messaggi‘U all'a¸èvvio‘uÏ‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?19ŽŽ¡‘ÿ7.2Ž‘%ý¡Come–U sono“congurati“i“miei“drivš¸èer“di“dispGositiv˜o?‘¬Ã‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?19ŽŽ¡‘ÿ7.3Ž‘%ý¡Come–U sono“congurati“i“miei“dispGositivi“hardw¸èare?‘c‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?20ŽŽ¦Â8Ž‘ÿAppQÂendice’…Û›20ŽŽ¡‘ÿ¹8.1Ž‘%ý¡Indirizzi‘í;‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?20ŽŽ¡‘%ý¡8.1.1Ž‘EûŸIndirizzi–U di“congurazione“del“bus“ISA“(Read-P¸èort,“ecc.)‘ö‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?20ŽŽ¡‘%ý¡8.1.2Ž‘EûŸIn¸èterv‘ÿqÐalli–U di“indirizzi‘"‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?21ŽŽ¡‘%ý¡8.1.3Ž‘EûŸSpazio–U di“indirizzi‘6õ‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?21ŽŽ¡‘%ý¡8.1.4Ž‘EûŸV›ÿ*¸erica–U dell'in¸èterv‘ÿqÐallo“(T˜est“ISA“pGer“i“conitti“di“indirizzo“I/O)‘aÙ‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?21ŽŽ¡‘%ý¡8.1.5Ž‘EûŸCom•¸èunicare›U direttamen“te˜attra“v“erso˜la˜memoria‘X-‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?21ŽŽ¡‘ÿ8.2Ž‘%ý¡In¸èterrupt–U “Dettagli‘«‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?22ŽŽ¡‘ÿ8.3Ž‘%ý¡In¸èterrupt‘U PCI‘Û‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?22ŽŽ¡‘ÿ8.4Ž‘%ý¡Isolamen¸èto‘‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?23ŽŽŽŽŒ‹*$ Û_2 ý ~?Ÿ„€ÕÁGŽÂ1.‘ñ8In®>troQÂduzione’~¯œ¹3ŽŽ ÕÁ ýV¯Á1Ž‘ÁInctropœduzioneŽŸèó¥!¢N ecbx1200Ä1.1Ž‘¾Cop• yrigh“t,›¸marc“hi˜registrati,˜lib_úeratoria˜e˜ringraziamen“tiŽ¤MªÂ1.1.1Ž‘#!\Cop•®>yrigh“t–Õ(in“inglese)Ž¡¹Cop•¸èyrigh“t–ˆ#(c)“1998-2000“bš¸èy“Da˜vid“S.“La˜wy˜er.‘ ˆPlease“freely“cop˜y“and“distribute“(sell“or“giv˜e“a˜w˜a˜y)“thisŽ¤ ®doGcumenš¸èt.‘l°F‘ÿ*¸or–F°corrections“and“minor“c˜hanges“con˜tact“the“main˜tainer.‘l°Otherwise“y˜ou“ma˜y“create“deriv‘ÿqÐativ˜eŽ¡wš¸èorks–U and“distribute“them“pro˜vided“y˜ou:Ž©ؼ1.›fóDiscuss–5yit“with“the“main¸ètainer“(if“there“is“one).˜2.˜Put“the“deriv‘ÿqÐativš¸èe“w˜ork“at“the“mirrored“LDP‘5qIn˜ternetŽ¡site–yH(or“the“likš¸èe)“for“free“do˜wnloading.–Ý÷3.“License–yHthe“w˜ork“in“the“spirit“of“this“license“or“use“GPL.“4.‘Ý÷Giv˜eŽ¡due–U credit“to“previous“authors“and“ma‘Ž0jor“con¸ètributors.ŽŸ ÖÂ1.1.2Ž‘#!\LibQÂeratoriaŽŸMª¹Ancš¸èhe–gëse“non“ho“in˜tenzionalmen˜te“pro˜v‘ÿqÐato“a“mettervi“fuori“strada,‘lprobabilmen˜te“ci“sono“parecc˜hi“errori“inŽ¡questo–ç=doGcumenš¸èto.‘LßVi“in˜vito“a“farmeli“notare.‘LßP˜oic˜h€é“questa“€è“doGcumen˜tazione“lib•Gera,‘ý7do˜vrebb“e–ç=essere“o˜vvioŽ¡cš¸èhe–U n€é“io“n€é“gli“autori“precenden˜ti“pGossiamo“essere“riten˜uti“legalmen˜te“respšGonsabili“p˜er“qualsiasi“errore.Ž¦ÂN.d.T.¹:‘îo•¸èvviamen“te–“dnemmeno“il“traduttore“pu€ò“essere“ritenš¸èuto“legalmen˜te“(e“nemmeno“moralmen˜te)Ž¡respGonsabile–U di“ev•¸èen“tuali‘U errori.Ž© ÖÂ1.1.3Ž‘#!\Marc®>hi‘ÕregistratiŽŸMª¹Qualsiasi–(ˆnomr“di“proGdotto“(cš¸èhe“inizia“con“un“lettera“maiuscola)“do˜vrebbGe“essere“considerato“un“marc˜hioŽ¡registrato.‘q€T‘ÿ*¸ali–U marc¸èhi“appartengono“ai“rispšGettivi“proprietari.p˜er“qualsiasi“errore.Ž¦Â1.1.4Ž‘#!\CreditiŽ¤Mª¹Daniel–'!Scott“ha“conš¸ètrollato“questo“doGcumen˜to“nel“marzo“del“2000“e“ha“tro˜v‘ÿqÐato“molti“errori“di“battitura,‘0Tecc.Ž©#ÃÄ1.2Ž‘¾Piani–¸futuri;“come“aiutareŽ¡¹Inš¸èvito–&×a“segnalarmi“qualsiasi“errore“in“fatti,–0opinioni,“logica,“battitura,“grammatica,“c˜hiarezza,“link,“ecc.‘bMaŽ¤ ®pšGer–)prima“cosa,‘1ßse“la“data“del“do˜cumenš¸èto“€è“pi€ù“v˜ecc˜hia“di“un“mese,‘1ßsi“con˜trolli“se“si“€è“in“pGossesso“dell'ultimaŽ¡v•¸èersione.‘q€In“vito–U inoltre“ad“inš¸èviarmi“qualsiasi“informazione“c˜he“si“pšGensa“sia“p˜ertinen¸ète“a“questo“do˜cumen¸èto.ŽŸؼNon–…ho“studiato“in“dettaglio“n€é“gli“isapnptošGols“n€é“le“patc¸èh“p˜er“il“k¸èernel“(ma“ho“in“programma“di“farlo).‘[÷NonŽ¡ho–ÚÒancora“bGen“capito“come“il“BIOS›Ú³congura“il“PnP˜(dipšGende“dal“tip˜o“di“BIOS),“e“neppure“come“Windo¸èws9xŽ¡aggiorna–½la“ESCD.“Quindi“questo“HO¸èWTO‘½r€è“incompleto“e“p•Gotrebb“e–½essere“inaccurato“(mi“si“faccia“sapGereŽ¡cosa–´&c'€è“di“errato).‘;ØIn“questo“HO•¸èWTO‘³ýqualc“he›´&v“olta˜ho˜usato˜??‘;ØpGer˜indicare˜c“he˜in˜realt€à˜non˜so˜la˜rispGosta.Ž¦Ä1.3Ž‘¾Nuo• v“e›¸v“ersioni˜di˜questo˜HO“WTOŽŸMª¹Una›¢ên•¸èuo“v‘ÿqÐa˜v“ersione˜del˜Plug-and-Pla“y-HO“WTO‘¢”do“vrebb•Ge˜essere˜disp“onibile˜circa˜ogni˜mese˜p“er˜la˜con-Ž¡sultazione–®.e“il“doš¸èwnload“nei“siti“c˜he“fanno“da“mirror“a“LDP‘ÿ*¸.“P˜er“una“lista“di“tali“siti“si“v˜eda:‘G8óqLË ectt1000ºhttp:Ž¡//linuxdoc.org//mirrors.html–¥t¹.›b}Sono“dispGonibili“div¸èersi“formati.˜Se“si“vuole“semplicemenš¸ète“con˜trol-Ž¡lare–‘]la“data“dell'ultima“vš¸èersione“p•Gotrebb“e–‘]essere“meglio“non“usare“un“mirror,‘àlquindi“si“dia“un“oGcc˜hio“a:Ž¡ºhttp://linuxdoc.org/HOWTO/Plug-–€and-“Play-“HOWTO.html–Ĺ.‘¾4La“vš¸èersione“c˜he“si“sta“leggendo“€è:‘OMv.0.11,ŽŽŽŒ‹[G Û_2 ý ~?Ÿ„€ÕÁGŽÂ2.‘ñ8Cosa–Õdo®>vrebbšQÂe“fare“il“PnP:“allo˜care“risorse-bus’Å=V¹4ŽŽ ÕÁ ýV¯Maš¸èy–k2000.‘³jLe“no˜vit€à“di“questa“v˜ersione“sono“l'utilit€à“scanpGort,‘p—div˜erse“correzioni“ortograc˜he“e“la“dicolt€àŽ¤ ®d'uso–U di“setpGci.Ž©ؼÂN.d.T.¹:‘e½l'ultima–=š(e“pi€ù“recenš¸ète)“traduzione“in“italiano“di“questo“doGcumen˜to“€è“repGeribile“nei“mirror“di“ó½HЃ ecti1000ÅILDPŽ¡ºhttp://www.pluto.linux.it/ildp/–U ¹e“scaricabile“in“div¸èersi“formati“dai“relativi“siti“ftp.ŽŸ(ÀœÁ2Ž‘ÁCosa–G\docvrebbšpœe“fare“il“PnP:“allo˜care“risorse-busŽŸèÄ2.1Ž‘¾Cos'€è–¸il“Plug-and-Pla y“(PnP)?ŽŸMª¹Semplicando–l“al“massimo,‘›il“Plug-and-Plaš¸èy“dice“automaticamen˜te“al“soft˜w˜are“(device“driv˜er“o“gestore“(driv˜er)Ž¡di–ÓbdispGositivš¸èo)“do˜v˜e“tro˜v‘ÿqÐare“i“div˜ersi“pGezzi“hardw˜are“(i“dispšGositivi)“quali“mo˜dem,›íUsc¸èhede“di“rete,˜sc¸èhede“audio,Ž¡ecc.‘1¸Il–•Çcompito“del“Plug-and-Plaš¸èy“€è“di“far“accoppiare“dispGositivi“sici“con“il“soft˜w˜are“(gestori“di“dispGositiv˜o)Ž¡cš¸èhe–K“funziona“con“essi“e“di“stabilire“dei“canali“di“com˜unicazione“tra“ogni“dispGositiv˜o“e“il“suo“gestore.‘TÙPi€ùŽ¡precisamenš¸ète,‘fÀil–0PnP‘/ÎalloGca“le“seguen˜ti“risorse-bus“sia“al“driv˜er“e“c˜he“all'hardw˜are:‘'Lindirizzi“I/O,“IR˜Q,Ž¡canali–KPDMA›KM(solo“pGer“il“bus“ISA)˜e“regioni“di“memoria.‘n;Se“non“si“capisce“cosa“siano“queste“4“risorse-buse“siŽ¡leggano–¸Yle“sotto“sezioni“cš¸èhe“seguono.‘=>Un“articolo“della“Lin˜ux“Gazette“su“3“di“queste“risorse-bus“€è“ÅIntr–ÿ}/o“ductionŽ¡to–CùIR¾˜Qs,‘p DMAs“and“Base“A–ÿ}/ddr“esses–¾¹.‘°ZUna“v¸èolta“assegnate“queste“risorse-bus“(e“se“€è“installato“il“gestoreŽ¡corretto)–U i“le“di“dispGositivš¸èo“(device“le)“nella“directory“/dev/“sono“pron˜ti“pGer“l'uso.Ž¦Questo–lassegnamenš¸èto“PnP‘]di“certe“risorse“del“bus“€è“talv˜olta“detto“congurazione‘ÿ*¸,‘%]ma“€è“solamen˜te“un“tipGoŽ¡di–4;congurazione“a“basso“liv•¸èello.‘f‰Anc“he–4;utilizzando“pienamen¸ète“il“PnP‘ÿ*¸,“buona“parte“della“congurazione“deiŽ¡dispGositivi–§±€è“fatta“da“qualcš¸èhe“altra“cosa.‘7±A˜d“esempio,‘ÊapšGer“la“congurazione“dei“mo˜dem,‘Êa€è“in¸èviata“una“stringaŽ¡di–Œinizializzazione“al“moGdem“attra•¸èv“erso–Œl'indirizzo“di“I/O‘~del“canale‘ÿ*¸.‘_OQuesta“stringa“di“inizializzazioneŽ¡non–PBha“nienš¸ète“a“c˜he“v˜edere“con“il“PnP‘ÿ*¸,“sebbšGene“il“canale“usato“p˜er“in¸èviarla“al“mo˜dem“€è“stato“allo˜cato“dalŽ¡PnP‘ÿ*¸.–YL'impšGostazione“della“v¸èelo˜cit€à“(e“di“molti“altri“parametri)“di“una“p˜orta“seriale“€è“fatta“in¸èviando“messaggi“alŽ¡gestore–Ùdel“dispGositivš¸èo“(device“driv˜er)“da“programmi“eseguiti“dall'uten˜te“(spGesso“automaticamen˜te“all'a˜vvioŽ¡del–‘|sistema).‘&“Ancš¸èhe“questa“congurazione“non“ha“nien˜te“a“c˜he“spartire“con“il“PnP‘ÿ*¸.“Quindi“quando“si“parlaŽ¡di–aCPnP‘a@con“congurazione“si“in¸ètende“solo“un“certo“tipšGo“di“congurazione.‘•èSebb˜ene“altra“do˜cumen¸ètazioneŽ¡(come–Íúquella“pGer“MS‘Í™Windoš¸èws)“c˜hiama“le“risorse-bus“semplicemen˜te“risorse‘ÿ*¸,‘,1io“ho“coniato“il“termineŽ¡risorse-bus–U in“moGdo“da“distringuerle“dalla“moltitudine“di“altri“tipi“di“risorse.ŽŸ#ÃÄ2.2Ž‘¾Come–¸fa“un“computer“pš_úer“tro v‘ÿ@ are“i“disp˜ositivi“(e“vicev ersa)ŽŸMª¹Un–Åcomputer“consta“di“una“CPU/prošGcessore“p˜er“eettuare“la“computazione“e“di“memoria“p˜er“immagazzinareŽ¡programmi–Ce“dati.‘]7Inoltre,‘$oci“sono“divš¸èersi“dispGositivi“come“v‘ÿqÐari“tipi“di“disc˜hi,‘$ouna“sc˜heda“video,‘$ouna“tastiera,Ž¡scš¸èheda– 8di“rete,‘6>sc˜hede“moGdem,‘6>sc˜hede“audio,›6>pGorte“seriali“e“parallele,˜ecc.‘ÉC'€è“ancš¸èhe“un“alimen˜tatore“pGerŽ¡fornire–‰/energia“elettrica,‘–2divš¸èersi“bus“sulla“sc˜heda“madre“pšGer“connettere“assieme“i“disp˜ositivi“e“la“CPU,“e“unŽ¡case–U pGer“metterci“tutto“den¸ètro.Ž¦In–«øtempi“an•¸ètic“hi–«øquasi“tutti“i“dispGositivi“a•¸èv“ev‘ÿqÐano–«øla“proprio“scš¸èheda“di“in˜terfaccia“(sc˜heda“a“circuito“stampato).Ž¡Oggi,›(‚oltre–Za“tali“sc¸èhede,˜molti“dispGositivi“hanno“un“piccolo“cš¸èhip“mon˜tato“pGermanen˜temen˜te“sulla“sc˜hedaŽ¡madre‘ÿ*¸.‘ÞœLe–yscš¸èhede“c˜he“v˜engono“inserite“nella“sc˜heda“madre“pGossono“con˜tenere“pi€ù“di“un“dispGositiv˜o.‘ÞœI‘yuc˜hipŽ¡di–ÊWmemoria“sono“qualcš¸èhe“v˜olta“considerati“come“dispGositivi“ma“non“sono“Plug-and-Pla˜y“nel“senso“usato“inŽ¡questo‘U HO¸èWTO.Ž¦Ancš¸èh€é–aÀun“computer“funzioni“correttamen˜te,‘déogni“dispGositiv˜o“dev'essere“sotto“il“con˜trollo“del“suo“gestore“oŽ¡device–ô£drivš¸èer‘ÿ*¸.‘QV€È‘ôŠun“soft˜w˜are“c˜he“€è“parte“del“sistema“opGerativ˜o“(talv˜olta“caricato“come“moGdulo)“e“c˜he“vieneŽ¡eseguito–žnella“CPU.“I‘gestori“di“dispšGositiv¸èo“sono“asso˜ciati“con“le“sp˜eciali“nella“directory“/dev“(notare“c¸èheŽ¡non–ÿsono“propriamenš¸ète“dei“le).‘pœHanno“nomi“come“hda1“(la“prima“partizione“sul“disco“sso“a),‘*tt˜yS0“(laŽ¡prima–ÏpGorta“seriale),›êPeth1“(la“seconda“sc¸èheda“ethernet),˜ecc.‘DÿP¸èer“rendere“le“cose“pi€ù“complicate,˜il“particolareŽŽŽŒ‹i| Û_2 ý ~?Ÿ„€ÕÁGŽÂ2.‘ñ8Cosa–Õdo®>vrebbšQÂe“fare“il“PnP:“allo˜care“risorse-bus’Å=V¹5ŽŽ ÕÁ ýV¯device–ëödriv¸èer“selezionato,›þdiciamo“pGer“eth1,˜dipšGender€à“dal“tip˜o“di“scš¸èheda“ethernet“c˜he“si“ha.‘NrQuindi“eth1“nonŽ¤ ®pu€ò–Êfsemplicemenš¸ète“essere“assegnato“ad“una“qualsiasi“gestore“di“sc˜heda“ethernet.‘CBDev˜e“essere“assegnato“ad“unŽ¡particolare–. gestore“cš¸èhe“funzioner€à“con“il“tipGo“di“sc˜heda“ethernet“installata.‘dyP˜er“con˜trollare“un“dispGositiv˜o,‘5ÜlaŽ¡CPU‘àï(sotto–á il“conš¸ètrollo“del“device“driv˜er)“in˜via“comandi“(e“dati)“e“legge“informazioni“dai“v‘ÿqÐari“dispGositivi.‘JÏP˜erŽ¡pšGoterlo–EÔfare“ogni“driv¸èer“di“disp˜ositivš¸èo“dev˜e“conoscere“l'indirizzo“del“dispGositiv˜o“c˜he“con˜trolla.‘lgLa“conoscenzaŽ¡di–ïtale“indirizzo“€è“equiv‘ÿqÐalenš¸ète“all'impGostazione“di“un“canale“di“com˜unicazione,‘!Åanc˜he“se“il“canale“sico“€è“inŽ¡realt€à–U il“bus“dati“denš¸ètro“al“PC“c˜he“€è“condiviso“praticamen˜te“da“qualsiasi“altra“cosa“presen˜te“nel“computer.Ž©ؼIl–°vrebbšQÂe“fare“il“PnP:“allo˜care“risorse-bus’Å=V¹6ŽŽ ÕÁ ýV¯gi€à–8Ádetto“prima“cš¸èhe“il“gestore“del“dispGositiv˜o“dev˜e“conoscere“l'indirizzo“di“una“sc˜heda“pšGer“p˜oter“essere“inŽ¤ ®grado–Ýdi“comš¸èunicare“con“quest'ultima.‘\¿Ma“cosa“dire“della“com˜unicazione“in“senso“oppšGosto?‘\¿Si“supp˜onga“c¸èheŽ¡il–È=dispGositivš¸èo“debba“com˜unicare“qualcosa“al“suo“gestore“con“una“certa“urgenza.‘Ê×P˜er“esempio,‘åil“dispGositiv˜oŽ¡p•Gotrebb“e›ø×a•¸èv“er˜appGena˜ricevuto˜un˜sacco˜di˜b“yte˜destinati˜alla˜memoria˜principale˜e˜quindi˜gli˜serv“e˜c“hiamareŽ¡il–U suo“gestore“pGer“trasferire“questi“dati“dal“suo“buer“praticamen¸ète“pieno“alla“memoria“principale.Ž©ؼIl–5¿dispGositivš¸èo“come“pu€ò“c˜hiedere“aiuto?‘^Non“pu€ò“usare“il“bus“dati“principali“pGerc˜h€é“sicuramen˜te“€è“gi€à“inŽ¡uso.‘øIn•¸èv“ece–, impšGone“un“particolare“p˜otenziale“elettrico“in“una“linea“di“in¸èterrupt“dedicata“(parte“del“bus),Ž¡spšGesso–Triserv‘ÿqÐata“p˜er“quel“particolare“disp˜ositivš¸èo.‘q(Questo“segnale“€è“detto“in˜terrupt“(in˜terruzione).‘q(Ci“sonoŽ¡l'equiv‘ÿqÐalenš¸ète–ò&di“16“linee“di“questo“tipGo“in“un“PC‘ò e“ogn˜una“di“queste“comanda“(indirettamen˜te)“da“particolareŽ¡gestore–ÿdi“dispGositivš¸èo.‘uOgni“linea“ha“un“n˜umero“di“IR˜Q‘Ó(In˜terrupt“ReQuest)“univ˜ošGco.‘uIl“disp˜ositivš¸èo“dev˜eŽ¡mettere–ýºil“suo“inš¸èterrupt“nella“linea“corretta“e“il“gestore“del“dispGositiv˜o“dev˜e“restare“in“attesa“dell'in˜terruzioneŽ¡sulla–'olinea“corretta.‘bESu“quale“linea“devš¸èe“mettersi“€è“spGecicato“dal“n˜umero“di“IR˜Q‘'dsalv‘ÿqÐato“nel“dispGositiv˜o.‘bELoŽ¡stesso–cnš¸èumero“di“IR˜Q‘cdev'essere“noto“al“gestore“del“dispGositiv˜o“in“moGdo“c˜he“questo“sappia“su“quale“linea“diŽ¡IR¸èQ–U restare“in“ascolto.Ž¦Una–/vš¸èolta“c˜he“il“driv˜er“del“dispGositiv˜o“ricev˜e“l'in˜terrupt“(una“c˜hiamata“di“aiuto)“dev˜e“capire“pGerc˜h€é“€è“statoŽ¡generato–lÕed“inš¸ètraprendere“l'azione“appropriata“pGer“servire“l'in˜terrupt.‘$Sul“bus“ISA‘lšogni“dispGositiv˜o“ha“bisognoŽ¡di–U un“proprio“nš¸èumero“di“IR˜Q“univ˜ošGco.‘q€Nel“bus“PCI,“€è“p˜ermessa“la“condivisione“degli“IR¸èQ.ŽŸ"y½Ä2.5Ž‘¾Canali‘¸DMAŽŸMª¹I–@canali›@SDMA“esistono˜solo˜pGer˜il˜bus˜ISA.˜DMA“sta˜pGer˜Direct˜Memory˜A•¸èccess˜(A“ccesso˜Diretto˜allaŽ¡Memoria).‘Îõ€È‘¾il–òpšGosto“do•¸èv“e–òun“disp˜ositiv¸èo“ha“la“p˜ossibilit€à“di“prendere“(rubare)“alla“CPU‘¾il“con¸ètrollo“delŽ¡bus–9principale“del“computer“e“trasferire“i“dati“direttamenš¸ète“nella“memoria“principale.‘h#Normalmen˜te“la“CPUŽ¡vš¸èorrebbGe–U fare“questo“trasferimen˜to“in“due“passi:Ž¤Þ‘ 9b1.ŽŽŽ‘leggendo–U i“dati“dallo“spazio“di“I/O“del“dispGositivš¸èo“e“mettendoli“den˜tro“la“CPU“stessaŽŸ1‘ 9b2.ŽŽŽ‘scriv¸èendo–U questi“dati“dalla“CPU“alla“memoria“principale.Ž¡Con–œil“DMA‘nsi“fa“solitamenš¸ète“un“solo“passo“in˜viando“i“dati“direttamen˜te“dal“dispGositiv˜o“alla“memoria.‘…õIlŽ¤ ®dispGositiv•¸èo›Q3dev“e˜a“v“ere˜tale˜funzionalit€à˜nel˜suo˜hardw“are˜e˜quindi˜non˜tutti˜i˜disp•Gositivi˜p“ossono˜fare˜unŽ¡DMA.–i‹Men¸ètre“€è“in“esecuzione“il“DMA›i†la“CPU˜non“pu€ò“fare“molto“in“quan¸èto“il“bus“principale“€è“usato“pGer“ilŽ¡trasferimen¸èto‘U DMA.Ž¦Il–Ï@bus“PCI‘Îßnon“ha“in“realt€à“nessun“DMA.“Ha“piuttosto“qualcosa“di“ancora“migliore:‘eÀil“bus“mastering.Ž¡F‘ÿ*¸unziona–Üsin“maniera“simile“al“DMA‘ÜPe“qualcš¸èhe“v˜olta“€è“c˜hiamato“DMA‘ÜP(pGer“esempio,‘þHi“disc˜hi“ssi“c˜hiamatiŽ¡UltraDMA).‘puPš¸èermette–ªad“un“dispGositiv˜o“di“div˜en˜tare“tempGoraneamen˜te“il“padrone“del“bus“(bus“master)Ž¡e–!di“trasferire“i“dati“in“maniera“analoga“a“quan¸èto“fa“la“CPU‘îquando“ne“ha“lei“il“pGotere.‘À‚Non“usa“nessunŽ¡nš¸èumero–¡Ëdi“canale“in“quan˜to“l'organizzazione“del“bus“PCI‘¡·€è“tale“c˜he“l'hardw˜are“PCI‘¡·sa“quale“dispGositiv˜o“haŽ¡attualmenš¸ète–)Lil“con˜trollo“del“bus“e“quali“dispGositiv˜o“lo“sta“c˜hiedendo“di“div˜en˜tare“il“prossimo“bus“master.‘bäP˜erŽ¡il–U bus“PCI“non“c'€è“quindi“alloGcazione“dei“canali“DMA.Ž¦Quando–RTun“dispGositiv¸èo“nel“bus“ISA›RSvuole“fare“un“DMA˜inš¸èvia“una“ric˜hiesta“DMA‘RSusando“una“linea“dedicataŽ¡pšGer–Økla“ric¸èhiesta“di“DMA‘ØIin“mo˜do“analogo“ad“una“ricš¸èhiesta“di“in˜terrupt.‘û`In“realt€à“il“DMA‘ØIp•Gotrebb“e‘ØkessereŽ¡gestito–0Øusando“inš¸èterrupt“ma“ci€ò“in˜tro•Gdurrebb“e–0Øalcuni“ritardi,‘gÆcosicc˜h€é“€è“pi€ù“v˜eloGce“da“fare“utilizzando“unŽ¡tipGo––äparticolare“di“inš¸èterrupt“detto“DMA-request.‘6ËCome“le“in˜terruzioni,‘§Ule“ric˜hieste“DMA‘–Ósono“n˜umerate“inŽ¡mošGdo–$dda“iden¸èticare“quale“disp˜ositivš¸èo“sta“facendo“la“ric˜hiesta.‘ßMQuesto“n˜umero“€è“c˜hiamato“DMA-c˜hannelŽ¡(canale–8ÅDMA).“P•¸èoic“h€é–8Åtutti“i“trasferimenš¸èti“DMA‘8Šusano“il“bus“principale“(e“solo“uno“pu€ò“essere“attiv˜o“inŽ¡un–µdeterminato“istanš¸ète)“in“realt€à“usano“tutti“lo“stesso“canale,‘4[ma“il“n˜umero“del“canale“DMA“serv˜e“pGerŽ¡iden•¸èticare›dºc“hi˜sta˜usando˜il˜canale‘ÿ*¸.‘ ONella˜sc“heda˜madre˜esistono˜dei˜registri˜hardw“are˜c“he˜con“tengono˜loŽ¡stato–:attuale“di“ogni“canale‘ÿ*¸.‘huQuindi“pšGer“p˜oter“eettuare“una“ric¸èhiesta“DMA,“il“disp˜ositivš¸èo“dev˜e“conoscereŽ¡il–U suo“nš¸èumero“di“canale“DMA“c˜he“dev˜e“essere“salv‘ÿqÐato“in“un“registro“nel“dispGositiv˜o“sico.ŽŽŽŒ‹‘ˆ Û_2 ý ~?Ÿ„€ÕÁGŽÂ2.‘ñ8Cosa–Õdo®>vrebbšQÂe“fare“il“PnP:“allo˜care“risorse-bus’Å=V¹7ŽŽ ÕÁ ýV¯Ä2.6Ž‘¾In terv‘ÿ@ alli–¸di“memoriaŽŸMª¹A¸èd–¬¦alcuni“dispšGositivi“€è“assegnato“dello“spazio“di“indirizzi“nella“memoria“principale.‘9X€È‘¬{sp˜esso“memoria“condi-Ž¤ ®visa–¤(shared“memory)“o“I/O‘Âmappato“in“memoria“(memory“mappGed“I/O).“Altre“vš¸èolte“€è“la“memoria“R˜OMŽ¡stessa–“xdel“dispšGositiv¸èo.‘,‰Quando“si“parla“delle“risorse-bus“si“usa“sp˜esso“semplicemen¸ète“il“termine“memoria‘ÿ*¸.Ž¡Quindi–U un“dispGositivš¸èo“pu€ò“anc˜he“usare“uno“spazio“di“indirizzi“di“I/O.Ž©ؼQuando–ŸYdi“installa“una“sc¸èheda“di“questo“tipšGo,‘ôin“eetti“si“sta“inserendo“un“mo˜dulo“di“memoria“p˜er“la“memoriaŽ¡principale.‘<½Questa–¶×memoria“pu€ò“essere“sia“Rš¸èOM‘¶¯(Read“Only“Memory‘ÿ*¸,‘ÖMemoria“a“Sola“Lettura)“c˜he“memoriaŽ¡condivisa.‘­Questa–_„memoria“pu€ò“servire“come“mezzo“di“trasferimenš¸èto“diretto“di“dati“tra“il“dispGositiv˜o“e“laŽ¡memoria–principale.‘vÈNon“€è“v•¸èeramen“te–un“trasferimenš¸èto“in“quan˜to“il“dispGositiv˜o“mette“i“dati“nella“propriaŽ¡memoria–TÆcš¸èhe“casualmen˜te“€è“la“memoria“principale.‘prSia“la“sc˜heda“c˜he“il“gestore“del“dispGositiv˜o“dev˜onoŽ¡sapGere–Þ²doš¸èv'€è“questa“memoria.‘6L'indirizzo“di“memoria“€è“solitamen˜te“molto“alto“in“moGdo“da“non“en˜trare“inŽ¡conitto–U con“gli“indirizzi“pi€ù“bassi“dei“c¸èhip“di“memoria“del“computer.Ž¦La–þRš¸èOM‘í€è“div˜ersa.‘[ €È‘ícome“un“programma“(forse“un“gestore“di“dispGositiv˜o)“c˜he“sar€à“usato“con“il“dispGositiv˜o.Ž¡Idealmen•¸ète,‘’do“vrebbGe–Cáfunzionare“con“Linš¸èux“e“non“solo“con“Windo˜ws“??‘=ÄPu€ò“essere“necessario“c˜he“v˜engaŽ¡oscurato›#Q(shado•¸èw“ed),‘-Gin“tendendo˜con˜ci€ò˜c“he˜viene˜copiato˜nei˜propri˜c“hip˜di˜memoria˜principale˜in˜moGdoŽ¡da–U funzionare“pi€ù“v•¸èeloGcemen“te.‘q€Un›U v“olta˜oscurato˜non˜€è˜pi€ù˜a˜sola˜lettura.Ž©#ÃÄ2.7Ž‘¾Risorse–¸sia“al“disp_úositivš o“c˜he“al“gestoreŽŸMª¹I‘„gestori–„Jdi“dispGositivš¸èo“dev˜ono“quindi“essere“in“qualc˜he“moGdo“collegati“all'hardw˜are“c˜he“con˜trollano.‘+äQuestoŽ¡€è–†afatto“fornendo“le“risorse-bus“(I/O,“Memoria,‘¯»IR¸èQ›†-e“DMA)˜sia“al“dispGositivš¸èo“sico“c˜he“al“soft˜w˜are“di“gestione.Ž¡P¸èer–ïAesempio,‘Éuna“pšGorta“seriale“usa“solo“2“(delle“4“p˜ossibili)“risorse:‘¥Âun“IRš¸èQ‘ïe“un“indirizzo“I/O.“En˜tram˜biŽ¡questi–éÀv‘ÿqÐalori“devš¸èe“essere“com˜unicati“sia“al“gestore“del“dispGositiv˜o“c˜he“al“dispGositiv˜o“sico“stesso.‘MµAl“gestore“(eŽ¡al–e;suo“dispGositivš¸èo)“€è“dato“anc˜he“un“nome“(come“tt˜yS1)“nella“directory“/dev.‘¡ÑL'indirizzo“e“il“n˜umero“di“IR˜QŽ¡sono–Àsalv‘ÿqÐati“dal“dispGositivš¸èo“in“registri“della“sc˜heda“(o“in“un“c˜hip“nella“sc˜heda“madre).‘]`Nel“caso“di“sc˜hede“conŽ¡i–.\pšGon¸èticelli“(jump˜er),‘d«queste“informazioni“sono“sempre“salv‘ÿqÐate“nell'hardw¸èare“del“disp˜ositivš¸èo“(sulla“sc˜heda,Ž¡ecc.).‘¨sMa–gqnel“caso“del“PnP‘ÿ*¸,“i“dati“dei“registri“spšGesso“v¸èengono“p˜ersi“quan¸èto“il“PC‘g*viene“sp˜en•¸èto,‘¬cosicc“h€éŽ¡le–H>informazioni“sulle“risorse“devš¸èono“essere“forniti“di“n˜uo˜v˜o“ad“ogni“dispGositiv˜o“ogni“v˜olta“c˜he“il“PC‘GÿvieneŽ¡riacceso.Ž¦Ä2.8Ž‘¾Il‘¸problemaŽŸMª¹L'arcš¸èhitettura–^Ødi“un“PC‘^“fornisce“solo“in“n˜umero“limitato“di“IR˜Q,“canali“DMA,“indirizzi“I/O‘^“e“regioni“diŽ¡memoria.‘7Se–§wci“fossero“solo“alcuni“dispGositivi“e“tutti“questi“a•¸èv“essero–§wrisorse-bus“standardizzate“(come“indirizziŽ¡I/O‘Äee–Ä‚nš¸èumeri“IR˜Q‘Äeunici)“non“ci“sarebbšGero“problemi“a“collegare“i“gestori“di“disp˜ositiv¸èo“ai“disp˜ositivi“stessi.Ž¡Ogni–U6dispGositivš¸èo“a˜vrebbšGe“delle“risorse“sse“e“non“andrebb˜e“in“conitto“con“qualsiasi“altro“disp˜ositiv¸èo“nelŽ¡computer.‘GÍNon–Øci“sarebbšGero“due“disp˜ositivi“cš¸èhe“v˜orrebbGero“a˜v˜ere“gli“stessi“indirizzi,‘ñ non“ci“sarebbGero“conittiŽ¡di–ý§IRš¸èQ,“ecc.‘TXOgni“driv˜er“p•Gotrebb“e–ý§quindi“essere“programmato“con“indirizzi,‘&IR˜Q,“ecc.‘TXuniv˜oGc˜hi“gi€à“coGdicatiŽ¡all'in¸èterno–U del“programma.‘q€La“vita“sarebbGe“pi€ù“semplice.Ž©ؼMa–Iucos€ì“non“€è.‘NNon“solo“oggi“ci“sono“cos€ì“tanš¸èti“dispGositivi“c˜he“i“conitti“sono“frequen˜ti,‘†Še“qualc˜he“v˜oltaŽ¡uno–èfha“necessit€à“di“a•¸èv“ere›èfanc“he˜pi€ù˜di˜uno˜dello˜stesso˜tipGo.‘+RP“er˜esempio˜qualcuno˜p•Gotrebb“e˜a•¸èv“ere˜pi€ù˜diŽ¡un–Ñ disco“sso,‘ðun“pšGo'“di“p˜orte“seriali,‘ðecc.‘å>P¸èer“queste“ragioni“i“disp˜ositivi“dev¸èono“p˜ossedere“un“minimo“diŽ¡essibilit€à–óƒin“mošGdo“c¸èhe“p˜ossano“essere“imp˜ostati“a“un“qualsivš¸èoglia“indirizzi,‘IR˜Q,“ecc.‘Lªsiano“necessari“pGerŽ¡evitare–9ši“conitti.‘hSMa“alcuni“IRš¸èQ‘9“e“indirizzi,‘?come“quello“del“cloGc˜k“e“della“tastiera,‘?sono“piuttosto“standard.Ž¡Questi–U non“hanno“bisogno“di“tale“essibilit€à.Ž¦A‘–parte–Ìil“problema“nel“conitto“nell'alloGcazione“delle“risorse-bus,‘¬c'€è“anc¸èhe“un“problema“nel“caso“si“commettaŽ¡un–š|errore“nel“dire“al“device“drivš¸èer“quali“sono“le“risorse-bus.‘A•P˜er“esempio,‘«Ósi“suppGonga“di“a˜v˜er“messo“IR˜Q‘šj4ŽŽŽŒ‹¦¡ Û_2 ý ~?Ÿ„€ÕÁGŽÂ3.‘ñ8La–Õsoluzione“Plug-and-Pla®>y“(PnP)’¤;¹8ŽŽ ÕÁ ýV¯in–‘Õun“le“di“congurazione“quando“in“realt€à“il“dispšGositiv¸èo“€è“imp˜ostato“all'IR¸èQ‘‘Å5.‘'ŸQuesto“€è“un“altro“tip˜o“diŽ¤ ®errore–U nell'alloGcazione“delle“risorse-bus.Ž©ؼL'alloGcazione–fßdelle“risorse-bus,›«Nse“fatta“correttamen¸ète,˜stabilisce“i“canali“di“comš¸èunicazione“tra“l'hardw˜areŽ¡sico–)£e“i“relativi“device“driv•¸èer.‘cP“er–)£esempio,‘2Vse“un“determinato“in¸èterv‘ÿqÐallo“di“indirizzi“I/O‘)˜(risorsa)“€è“alloGcatoŽ¡sia–½al“gestore“di“dispGositivš¸èo“c˜he“ad“un“pGezzo“di“hardw˜are,‘×™allora“in“questo“moGdo“si“€è“stabilito“un“canale“diŽ¡comš¸èunicazione–÷‘unidirezionale“tra“loro.‘RQIl“driv˜er“pu€ò“in˜viare“comandi“ed“informazioni“al“dispGositiv˜o.‘RQIn“realt€àŽ¡€è–fuun“pGo'“pi€ù“cš¸èhe“unidirezionale,‘ªÊin“quan˜to“il“driv˜er“pu€ò“ottenere“informazioni“dal“dispGositiv˜o“leggendoneŽ¡i–cfsuoi“registri.‘œQMa“il“dispšGositiv¸èo“in“questo“mo˜do“non“pu€ò“inizializzare“una“qualsiasi“com•¸èunicazione.‘œQP“erŽ¡inizializzarla–Çil“dispGositivš¸èo“ha“bisogno“di“un“IR˜Q‘Æäin“moGdo“da“creare“un“canale“bidirezionali“nel“quale“sia“ilŽ¡driv•¸èer›U c“he˜il˜dispGositiv“o˜pGossono˜iniziare˜una˜com“unicazione.ŽŸ#ÃÄ2.9Ž‘¾Il–¸PnP“tro v‘ÿ@ a“i“dispš_úositivi“connessi“nelle“p˜orte“serialiŽŸMª¹Anc¸èhe–%Wi“dispšGositivi“esterni“connessi“alla“p˜orta“seriale“attra•¸èv“erso–%Wun“ca•¸èv“o–%W(come“i“mo˜dem“esterni)“p˜ossonoŽ¡essere–@cš¸èhiamati“Plug-and-Pla˜y‘ÿ*¸.‘xáP˜oic˜h€é“solo“la“pGorta“seriale“stessa“ha“bisogno“di“risorse-bus“(un“IR˜Q‘e“unŽ¡indirizzo–Œ I/O)‘Œ’non“€è“necessario“allora“risorse-bus“pšGer“questo“tip˜o“di“disp˜ositivi.‘Quindi“p˜er“essi“il“PnP‘Œ’nonŽ¡€è–U in“realt€à“necessario.‘q€Comš¸èunque,“c'€è“una“spGecica“PnP“anc˜he“pšGer“questi“disp˜ositivi“seriali“esterni.Ž¦Un–ûsistema“opGerativš¸èo“PnP‘ætro˜v˜er€à“questi“dispGositivi“esterni“e“legger€à“il“loro“n˜umero“di“moGdello,‘œecc.‘UÉP˜oi“pu€òŽ¡essere–Bin“grado“di“troš¸èv‘ÿqÐarne“il“gestore“di“dispGositiv˜o“pi€ù“adatto,‘¯Je“quindi“non“si“dev˜e“dire“ad“un“programmaŽ¡applicativ•¸èo›^øc“he˜si˜ha˜un˜certo˜dispGositiv“o˜diciamo˜su˜/dev/tt“yS1.‘P“oic“h€é˜si˜€è˜in˜grado˜di˜informare˜man“ual-Ž¡menš¸ète–—2il“proprio“programma“applicativ˜o“(attra˜v˜erso“un“le“di“congurazione,‘§¶ecc.)‘7µsu“quale“pGorta“seriale“€èŽ¡presenš¸ète–y³il“dispGositiv˜o“(ed“ev˜en˜tualmen˜te“dicendogli“anc˜he“qual'€è“il“suo“n˜umero“di“moGdello)“in“realt€à“non“siŽ¡ha›U v•¸èeramen“te˜bisogno˜di˜questa˜caratteristica˜PnP˜p•Ger˜le˜p“orte˜seriali.ŽŸ(ÀœÁ3Ž‘ÁLa–G\soluzione“Plug-and-Placy“(PnP)ŽŸèÄ3.1Ž‘¾In tro_úduzione–¸al“PnPŽŸMª¹Il–èñtermine“Plug-and-Plaš¸èy“(PnP)‘èÖha“div˜ersi“signicati.‘MqIn“senso“lato“€è“semplicemen˜te“l'autoGcongurazione“c˜heŽ¡aš¸èvviene–Ù³quando“uno“installa“un“n˜uo˜v˜o“dispGositiv˜o“e“questo“si“congura“da“solo.‘ÿ9Nel“senso“usato“in“questoŽ¡HO¸èWTO,–™‡la“congurazione“€è“solo“la“congurazione“delle“risorse-bus“PnP‘™ue“la“successiv‘ÿqÐa“notica“al“gestoreŽ¡del–›“dispšGositiv¸èo.‘3§In“senso“stretto“€è“pure“l'imp˜ostazione“delle“risorse-bus“in“un“disp˜ositivš¸èo“hardw˜are.‘3§Si“pGossonoŽ¡pure–æEinš¸ètendere“le“spGecic˜he“PnP‘æ)le“quali“(assieme“ad“altre“cose)“spGecicano“come“v˜engono“letti“e“scritti“i“datiŽ¡delle–;Trisorse“PnP‘;Nnei“dispšGositivi“(sp˜esso“sc¸èhede)“sul“bus“ISA.“Le“sp˜ecic¸èhe“PCI‘;Nstandard“(e“non“quelle“PnP)Ž¡fanno–U la“stessa“cosa“pGer“il“bus“PCI.Ž¦Il–±œPnP‘±rmette“in“corrispšGondenza“i“disp˜ositivi“con“i“relativi“driv¸èer“e“sp˜ecica“i“loro“canali“di“com¸èunicazione.‘:ÿSulŽ¡bus–lCISA,“prima“del“Plug-and-Pla¸èy“le“risorse-bus“erano“impšGostate“sui“disp˜ositivi“hardw¸èare“tramite“p˜on¸èticelliŽ¡(jumpGer).‘_0Ai–¤[drivš¸èer“soft˜w˜are“erano“in˜v˜ece“assegnate“tramite“le“di“congurazione“(o“simili)“o“in˜terrogandoŽ¡il–¯âdispGositivš¸èo“agli“indirizzi“do˜v˜e“ci“si“aspGetta˜v‘ÿqÐa“risiedesse.‘ÇIl“bus“PCI‘¯Ëha“suppGortato“il“qualcosa“di“simile“alŽ¡PnP‘n–¤dall'inizio“ed“€è“cos€ì“stato“banale“implemenš¸ètarlo“pGer“questo“bus.‘VWP˜oic˜h€é“le“spGecic˜he“del“bus“PCI‘nonŽ¡usano–DÇil“termine“PnP‘ÿ*¸,“non“€è“cš¸èhiaro“se“€è“o“meno“lecito“c˜hiamare“PnP›DÃil“bus“PCI˜(ma“suppGorta“nell'hardw¸èareŽ¡quello–U c¸èhe“a“tutt'oggi“€è“detto“PnP).ŽŸ#ÃÄ3.2Ž‘¾Come–¸funziona“(semplicato)ŽŸMª¹Quanš¸èto–ïsegue“€è“una“panoramica“oltremoGdo“semplicata“del“funzionamen˜to“del“Plug-and-Pla˜y‘ÿ*¸.‘O{Il“programmaŽ¡di–_congurazione“del“PnP›^Ô(a“v¸èolte“un“programma“nel“BIOS)˜tro¸èv‘ÿqÐa“tutti“i“dispGositivi“PnP˜e“cš¸èhiede“ad“ogn˜uno“diŽŽŽŒ‹ ºÐ Û_2 ý ~?Ÿ„€ÕÁGŽÂ3.‘ñ8La–Õsoluzione“Plug-and-Pla®>y“(PnP)’¤;¹9ŽŽ ÕÁ ýV¯essi–‹di“quali“risorse-bus“hanno“bisogno.‘^OConš¸ètrolla“pGoi“quali“risorse-bus“(IR˜Q,“ecc.)‘^Ogli“€è“pGossibile“distribuire.Ž¤ ®Naturalmen¸ète–]µci“sono“risorse-bus“riserv‘ÿqÐate“usate“dai“dispGositivi“non“PnP‘]²(legacy)“(se“ne“€è“nota“la“presenza)Ž¡e–]non“d€à“via“nessuna“di“queste“risorse“riserv‘ÿqÐate.‘‰lUsa“pšGoi“alcuni“criteri“(non“sp˜ecicati“nelle“sp˜ecic¸èhe“PnP)Ž¡pšGer–d§assegnare“le“risorse-bus“in“mo˜do“cš¸èhe“non“ci“siano“conitti“e“c˜he“tutti“i“dispšGositivi“abbiano“(se“p˜ossibile)Ž¡quello–¬“di“cui“hanno“bisogno.‘wØDice“pšGoi“ad“ogni“disp˜ositiv¸èo“sico“quali“sono“le“risorse-bus“a“lui“assegnate“e“iŽ¡dispšGositivi–€Pstessi“si“auto-congurano“p˜er“usare“solo“le“risorse-bus“assegnate.‘óPš¸èoi,‘‹in“qualc˜he“moGdo,‘‹i“gestoriŽ¡(drivš¸èer)–6wdi“dispGositiv˜o“scoprono“quali“risorse-bus“usano“i“corrispGonden˜ti“dispGositivi“e“sono“quindi“in“grado“diŽ¡com•¸èunicare›U attiv‘ÿqÐamen“te˜con˜i˜dispGositivi˜c“he˜con“trollano.Ž©ؼPš¸èer–˜Õesempio,‘©Âsi“suppGonga“c˜he“una“sc˜heda“necessiti“di“un“in˜terrupt“(n˜umero“di“IR˜Q)›˜Ãe“di“1“MB˜di“memoriaŽ¡condivisa.‘T%Il–ýprogramma“PnP‘üùlegge“queste“ricš¸èhieste“dalla“sc˜heda.‘T%Assegna“pGoi“a“quest'ultima“l'IR˜Q5“e“1“MBŽ¡di–ÝXmemoria“nello“spazio“indirizzi,›ÿfa“partire“dall'indirizzo“0xe9000000.‘ )P¸èer€ò“non“€è“sempre“cos€ì“semplice,˜inŽ¡quanš¸èto–ÿ8la“sc˜heda“p•Gotrebb“e›ÿ8sp“ecicare˜c•¸èhe˜pu€ò˜usare˜solo˜certi˜n“umeri˜di˜IR“Q–ÿ#(solo˜nel˜caso˜ISA)“o˜c¸èhe˜il˜MBŽ¡di–$ómemoria“devš¸èe“risiedere“en˜tro“un“bGen“determinato“in˜terv‘ÿqÐallo“di“indirizzi.‘aqI‘$ædettagli“sono“div˜ersi“nel“caso“diŽ¡bus–U PCI“o“ISA,“e“sono“maggiormen¸ète“complessi“nel“secondo“caso.Ž¦Esistono–æalcune“scorciatoie“cš¸èhe“il“soft˜w˜are“PnP‘åãp•Gotrebb“e–æusare.‘LuUna“di“man˜tenere“traccia“di“come“sono“stateŽ¡assegnate–V²le“risorse-bus“nell'ultima“congurazione“(l'ultima“vš¸èolta“c˜he“€è“stato“usato“il“computer)“e“di“riusareŽ¡queste–ç/informazioni.‘'®Windoš¸èws9x“e“i“BIOS–ç PnP“usano–ç/questa“men˜tre“lo“fa“il“Lin˜ux“standard.‘'®Windo˜ws9xŽ¡salv›ÿqÐa– øqueste“informazioni“nel“suo“Registry“sul“disco“sso,‘7.men¸ètre“un“BIOS– ÊPnP“le– øsalv˜a“nella“memoriaŽ¡non–U vš¸èolatile“del“PC“(detta“ESCD);“si“v˜eda“la“sezione“5.3.1“(Il“Database“ESCD“del“BIOS)).Ž¦Sotto–èñLinš¸èux“ogni“dispGositiv˜o“€è“a“s€é“e“non“esiste“un“registro“cen˜tralizzato“non“v˜olatile“degli“assegnamen˜ti“delleŽ¡risorse.‘ý&Alcuni–ƒ­drivš¸èer“di“dispGositiv˜o“salv‘ÿqÐano“l'ultima“congurazione“c˜he“hanno“usato“e“la“usano“la“prossimaŽ¡v•¸èolta›¥°c“he˜viene˜acceso˜il˜computer.‘c0Assumono˜implicitamen“te˜c“he˜il˜resto˜dell'hardw“are˜non˜abbia˜bisognoŽ¡delle–U risorse-bus“c¸èhe“usano“loro.Ž¦Se–}1i“dispšGositivi“ricordassero“la“propria“congurazione“preceden¸ète,‘‡5allora“non“ci“sarebb˜e“nessun“hardw¸èare“daŽ¡congurare–yÎal“successivš¸èo“ria˜vvio,‘ÂùpGer€ò“questi“sem˜brano“dimen˜ticarsene“quando“il“computer“viene“spGen˜to.Ž¡Alcuni–Tconš¸ètengono“una“congurazione“predenita“(c˜he“non“€è“necessariamen˜te“l'ultima“usata).‘JQuindi“ilŽ¡programma–Û•di“congurazione“PnP‘Ûrdevš¸èe“essere“lanciato“ogni“v˜olta“c˜he“viene“acceso“il“PC.“Inoltre,‘ý2se“vieneŽ¡aggiunš¸èto–¤›un“n˜uo˜v˜o“dispGositiv˜o,‘¸zallora“dev'essere“congurato.‘_ñL'alloGcazione“delle“risorse-bus“a“questo“n˜uo˜v˜oŽ¡dispšGositiv¸èo–Ppu€ò“comp˜ortare“il“p˜ortar“via“alcune“risorse-bus“ad“un“disp˜ositivš¸èo“preesisten˜te“e“l'assegnamen˜to“aŽ¡quest'ultimo–U di“risorse-bus“alternativš¸èe“c˜he“pGossa“usare.ŽŸ#ÃÄ3.3Ž‘¾L'a vvio–¸del“PCŽŸMª¹Quando–A¿il“PC‘A‚viene“acceso“pGer“la“prima“vš¸èolta“il“c˜hip“del“BIOS‘A‚esegue“il“suo“programma“pGer“far“a˜vviareŽ¡il–ËWcomputer“(il“primo“passo“€è“la“vš¸èerica“dell'hardw˜are).‘Ô'Se“il“sistema“opGerativ˜o“€è“immagazzinato“nel“discoŽ¡sso–z5(com'€è“ormai“usuale)“allora“il“BIOS‘z+dev¸èe“essere“a“conoscenza“della“presenza“del“disco“sso.‘à¾Se“il“discoŽ¡sso–ÁÖ€è“PnP›Áºallora“il“BIOS˜p•Gotrebb“e–ÁÖusare“i“metoGdi“PnP˜pšGer“tro¸èv‘ÿqÐarlo.‘·¢Inoltre,‘Ýp˜er“p˜ermettere“all'uten¸ète“diŽ¡congurare›ƒÝman•¸èualmen“te˜il˜CMOS–ƒ¨del˜BIOS“e˜di˜rispGondere˜a˜messaggi˜d'errore˜nell'a¸èvvio˜del˜computer,‘­·sonoŽ¡pure–Š`necessari“uno“scš¸èhermo“(una“sc˜heda“video)“e“una“tastiera.‘AIl“BIOS‘ŠSdev˜e“quindi“a“sua“v˜olta“congurareŽ¡questi‘U dispGositivi.Ž¦Un–¾ôvš¸èolta“c˜he“il“BIOS‘¾Ùha“iden˜ticato“il“disco“sso,‘Ùila“sc˜heda“video“e“la“tastiera“€è“pron˜to“pšGer“fare“il“b˜o˜otŽ¡(caricare–¹³il“sistema“opGerativš¸èo“dal“disco“sso).‘=±Se“si“€è“detto“al“BIOS‘¹‹c˜he“si“ha“un“sistema“opGerativ˜o“PnP‘ÿ*¸,“alloraŽ¡do•¸èvrebbGe›öça“vviare˜il˜PC‘ö½e˜p•Goi˜lasciare˜al˜sistema˜op“erativ•¸èo˜la˜conclusione˜della˜congurazione˜PnP‘ÿ*¸.˜Div“er-Ž¡samenš¸ète,‘°¢(prima–žUdel“b•Go“ot)–žUun“BIOS–žBPnP“probabilmen˜te–žUpro˜v˜er€à“a“fare“da“solo“il“resto“della“congurazioneŽ¡PnP–U dei“dispGositivi“(ma“non“dei“loro“gestori).ŽŽŽŒ‹ Íe Û_2 ý ~?Ÿ„€ÕÁGŽÂ3.‘ñ8La–Õsoluzione“Plug-and-Pla®>y“(PnP)’ ¤‹¹10ŽŽ ÕÁ ýV¯Ä3.4Ž‘¾BusŽŸMª¹ISA›„V€è–„‹il“v•¸èecc“hio–„‹bus“dei“PC˜IBM,“men¸ètre“PCI˜€è“il“bus“pi€ù“n•¸èuo“v“o–„‹e“vš¸èeloGce“di“In˜tel.‘+úIl“bus“PCI‘„V€è“stato“progettatoŽ¤ ®pGer–¨quello“cš¸èhe“oggi“viene“detto“PnP‘ÿ*¸.“Rende“semplice“(se“confron˜tato“con“il“bus“ISA)‘§ûscoprire“come“dev˜onoŽ¡essere–@Îassegnate“le“risorse-bus“PnP‘@Èai“dispGositivi“hardw•¸èare.‘jºP“er›@Îv“edere˜c“he˜cosa˜€è˜successo˜si˜usi˜il˜comandoŽ¡ºlspci–*ô¹e/o“si“vš¸èeda“º/proc/pci“¹o“º/proc/bus/pci¹.‘òýSono“utili“anc˜he“i“messaggi“c˜he“appaiono“sullo“sc˜hermoŽ¡all'aš¸èvvio–U (si“usi“Shift+P˜ageUp“pGer“tornare“su).‘q€Si“v˜eda“7.1“(Messaggi“all'a˜vvio).Ž©ؼNel–ªÿcaso“del“bus“ISA›ªéc'€è“un“problema“reale“con“l'implemen¸ètazione“del“PnP˜pGoicš¸èh€é“nessuno“a˜v˜ev‘ÿqÐa“in“men˜teŽ¡il–a—PnP›a”quando“€è“stato“progettato“il“bus“ISA˜e“praticamen¸ète“non“ci“sono“indirizzi“I/O˜dispšGonibili“p˜er“il“PnPŽ¡da–|usare“pšGer“in¸èviare“informazioni“di“congurazione“ai“disp˜ositivi“sici.‘ö“Di“conseguenza“il“mo˜do“di“gestire“ilŽ¡PnP›é¼nel–é×bus“ISA˜€è“complicato.‘M½Sull'argomenš¸èto“€è“stato“scritto“un“libro“in˜tero“(si“v˜eda“la“sezione“5.9“(Libri“sulŽ¡PnP)).–>T‘ÿ*¸ra“le“altre“cose,‘Âsi“ricš¸èhiede“c˜he“il“programma“di“PnP‘assegni“un“handle“(iden˜ticativ˜o)“tempGoraneoŽ¡a–ÞQciascun“dispšGositiv¸èo“PnP‘Þ3in“mo˜do“c¸èhe“questi“p˜ossano“essere“indirizzati“p˜er“la“successiv‘ÿqÐa“congurazione“PnP‘ÿ*¸.Ž¡L'assegnazione–”qdi“uno“di“questi“handle“€è“detta“isolation“(isolamen•¸èto).‘/sP“er–”qi“dettagli“si“v¸èeda“la“sezioneŽ¡8.4–U (Isolamen¸èto)“in“AppGendice.Ž¦Probabilmen¸ète–$Lil“bus“ISA›$?€è“destinato“a“scomparire.‘a9Quando“lo“far€à,‘.il“PnP˜sar€à“pi€ù“semplice“in“quan¸èto“sar€àŽ¡pi€ù–7:facile“scoprire“come“il“BIOS‘73ha“congurato“l'hardw¸èare.‘g‰Ci“sar€à“ancora“la“necessit€à“di“accopiare“i“gestoriŽ¡di–9±dispšGositiv¸èo“con“i“disp˜ositivi,‘?.come“pure“la“necessit€à“di“congurare“i“disp˜ositivi“aggiunš¸èti“quan˜ti“il“PC‘9ª€è“gi€àŽ¡funzionanš¸ète.‘q€Queste–U necessit€à“saranno“soGddisfatte“se“Lin˜ux“div˜en˜ta“un“sistema“opGerativ˜o“PnP‘ÿ*¸.ŽŸ#ÃÄ3.5Ž‘¾Lin• ux›¸dev“e˜gestire˜meglio˜il˜PnPŽŸMª¹Il–`PnP›`(pGer“il“bus“ISA)˜€è“stato“in•¸èv“en“tato–`da“Compaq,‘bÔIn¸ètel“e“PhoGenix.‘’dLa“Microsoft“ne“€è“stata“il“principaleŽ¡promotore.‘(Dal–5punš¸èto“di“vista“di“Lin˜ux“sarebbGe“stato“meglio“se“il“PnP‘4Énon“fosse“mai“stato“in˜v˜en˜tato‘ÿ*¸.Ž¡Alla–2gne“il“bus“ISA‘2^si“sarebbGe“estinš¸èto“e“a˜vrebbGe“prev‘ÿqÐalso“il“bus“PCI‘2^PnP-lik˜e“cos€ì“a˜vremmo“a˜vuto“a“tutti“gliŽ¡eetti–Eun“PnP‘0facile“da“implemenš¸ètare.‘UâMa“c˜he“piaccia“o“no,‘×a“tutt'oggi“la“maggior“parte“del“n˜uo˜v˜o“hardw˜areŽ¡ISA–hÅ€è›hÊPnP“e˜Lin•¸èux˜non˜ha˜scelta˜se˜non˜quella˜di˜gestire˜ecacemen“te˜il˜PnP‘ÿ*¸.˜Ma˜il˜Lin“ux˜standard˜(comeŽ¡quello–E]dei“primi“del“1999)“rende“la“gestione“del“PnP›EYcomplicata“(spGecialmen¸ète“sul“bus“ISA)˜men¸ètre“lo“scopGoŽ¡del–U PnP“€è“quello“di“rendere“le“cose“pi€ù“semplici.Ž¦In–ºun“certo“senso,‘5Linš¸èux“€è“gi€à“in“qualc˜he“mošGdo“PnP‘©p˜er“il“bus“PCI.“Quando“il“PC‘©si“a¸èvvia“si“p˜ossono“notareŽ¡dai–smessaggi“sullo“scš¸èhermo“c˜he“alcuni“driv˜er“di“dispGositiv˜o“di“Lin˜ux“spGesso“tro˜v‘ÿqÐano“i“loro“corrispGonden˜tiŽ¡dispGositivi–ëŸhardwš¸èare“(e“le“risorse“c˜he“il“BIOS‘ë6gli“ha“assegnato).‘ 4üMa“ci“sono“situazioni“c˜he“un“sistemaŽ¡opšGerativ¸èo–U PnP“p˜otrebb˜e“gestire“meglio:Ž©ؼ‘ 9b1.ŽŽŽ‘una–U decienza“di“risorse-busŽ¤®‘ 9b2.ŽŽŽ‘pi€ù–U di“un“driv¸èer“pšGer“un“disp˜ositiv¸èo“sicoŽ¡‘ 9b3.ŽŽŽ‘un–U drivš¸èer“attiv‘ÿqÐato“c˜he“non“riesce“a“tro˜v‘ÿqÐare“il“suo“dispGositiv˜o“sicoŽ¡‘ 9b4.ŽŽŽ‘nstallazioni–U a“caldo“di“un“dispGositiv¸èo“.Ž¦Gli–·Àutenš¸èti“di“Lin˜ux“non“hanno“bisogno“di“in˜v˜estigare“i“dettagli“del“PnP‘·dpGer“congurare“come“si“dev˜e“iŽ¤ ®dispšGositivi–†€PnP‘†1ISA.“Una“soluzione“p˜otrebb˜e“essere“una“vš¸èersione“standardizzata“del“k˜ernel“di“Lin˜ux“c˜heŽ¡suppGorti–¨il“Plug-and-Pla¸èy“su“ISA,“PCI›“e“altri“bus.‘V€È˜stata“scritta“una“patcš¸èh“pGer“il“k˜ernel“sebbGene“la“maggiorŽ¡parte–@Âdei“drivš¸èer“non“la“suppGortino.‘4fNon“€è“parte“standard“di“Lin˜ux.‘4fSi“v˜eda“la“sezione“5.6“(P˜atc˜h“pGer“ilŽ¡Kernel).ŽŽŽŒ‹ ám Û_2 ý ~?Ÿ„€ÕÁGŽÂ4.‘ñ8Congurazione–Õdel“BIOS“PnP’"Üv¹11ŽŽ ÕÁ ýV¯Á4Ž‘ÁCongurazione–G\del“BIOS“PnPŽŸ¿:¹Quando–¢un“computer“viene“acceso,‘#"prima“di“caricare“il“sistema“opGerativ¸èo“viene“eseguito“il“BIOS.“I–’BIOS“pi€ùŽ¤ ®recen¸èti–œ¾sono“PnP›œ¬e“congureranno“alcuni“(o“al“limite“tutti)“i“dispGositivi“PnP‘ÿ*¸.“In“molti“BIOS˜non“c'€è“moGdoŽ¡di–ÖÎdisabilitare“il“PnP‘Ö¬e“quindi“bisogna“con•¸èviv“erci.‘ö‰Qui–ÖÎdi“seguito“alcune“delle“scelte“c¸èhe“p•Gotrebb“ero‘ÖÎessereŽ¡presenš¸èti–U nel“men˜u“CMOS“del“proprio“BIOS:ŽŸؼ‘ó !",š cmsy10¸ŽŽŽ‘¹4.1–U (Si“ha“un“sistema“opGerativ¸èo“PnP?)Ž¤®‘¸ŽŽŽ‘¹4.2–U (Come“devš¸èono“essere“con˜trollate“le“risorse-bus?)Ž¡‘¸ŽŽŽ‘¹4.3–U (Reinizializzare“la“congurazione?)ŽŸ#ÃÄ4.1Ž‘¾Si–¸ha“un“sistema“op_úerativ o“PnP?Ž©Mª¹Se–x”si“rispGonde“aermativ‘ÿqÐamen¸ète,›Áqallora“il“BIOS–xIPnP“inizier€à–x”la“congurazione“PnP‘xIdel“disco“sso,˜dellaŽ¤ ®scš¸èheda–|(video“e“della“tastiera“pGer“rendere“a˜vviabile“il“sistema.‘æ—Ma“lascer€à“c˜he“il“sistema“opGerativ˜o“termini“ilŽ¡la•¸èv“oro–àËdi“congurazione.‘Pš¸èotrebbGe“fare“un“8.4“(Isolamen˜to)“nel“bus“ISA‘à§lasciando“i“dispGositivi“disabilitatiŽ¡ma–l—pron¸èti“pšGer“essere“congurati“dal“sistema“op˜erativš¸èo.‘·äNel“caso“di“Lin˜ux“si“do˜vrebbGe“dire“c˜he“non“si“ha“unŽ¡sistema–#ÖopšGerativ¸èo“PnP‘ÿ*¸.“Se“non“lo“si“fa“il“BIOS‘#¡p˜otrebb˜e“lasciare“disabilitati“i“disp˜ositivi“ISA‘#¡c¸èhe“non“haŽ¡congurato–U ??‘q€Inoltre“p•Gotrebb“ero–U non“v¸èenir“congurati“pure“i“dispGositivi“PCI“??ŽŸؼSe–Ù[si“dice“al“BIOS›Ù9c¸èhe“non“si“ha“un“SO˜PnP‘ÿ*¸,“allora“il“BIOS˜far€à“tutta“la“congurazione“da“solo.‘þ0A˜menoŽ¡cš¸èhe–U6non“siano“stati“aggiun˜ti“n˜uo˜vi“dispGositivi“PnP‘ÿ*¸,“do˜vrebbGe“usare“la“congurazione“c˜he“ha“salv‘ÿqÐato“nellaŽ¡memoria–½>non“vš¸èolatile“(ESCD).“Si“v˜eda“la“sezione“5.3.1“(Il“Database“ESCD‘½$del“BIOS).“Se“l'ultima“sessioneŽ¡nel–Vçproprio“computer“€è“stata“sotto“Linš¸èux,‘WXallora“non“ci“do˜vrebbšGero“essere“mo˜dic¸èhe“nella“congurazione.‘vÔSiŽ¡vš¸èeda–Žêla“sezione“5.3“(Congurare“il“PnP‘ŽÛdal“BIOS).“Ma“se“l'ultima“sessione“€è“a˜vv˜en˜uta“in“Windo˜ws“9x“(c˜heŽ¡€è– ±PnP)‘ allora“Windoš¸èws“p•Gotrebb“e– ±a˜v˜er“mošGdicato“l'ESCD.“Si“supp˜one“lo“faccia“solo“se“si“€è“forzata“unaŽ¡congurazione– go“si“€è“installato“un“dispGositivš¸èo“legacy‘ÿ*¸.‘Y˜Si“v˜eda“la“sezione“5.3.2“(Usare“Windo˜ws“pšGer“Imp˜ostareŽ¡l'ESCD).–8Se“si“sta“usando“isapnp“o“i“programmi“delle“Utilit¸èy“PCI‘ŒçpGer“la“congurazione,‘Û=questi“sarannoŽ¡eseguiti–U dopšGo“il“BIOS“e“cam¸èbieranno“le“cose“nel“mo˜do“c¸èhe“gli“si“dice.ŽŸ ÖÂ4.1.1Ž‘#!\Inš®>teropQÂerabilit€à–Õcon“Windo˜ws9xŽ¦¹Se–8Üsi“sta“usando“sia“Linš¸èux“c˜he“Windo˜ws“nello“stesso“PC,“come“rispGondere“alla“domanda“del“BIOS:“Si“ha“un“SOŽ¡PnP?–”ãNormalmenš¸ète“si“do˜vrebbšGe“dire“no“p˜er“Lin¸èux“standard“e“s€ì“p˜er“Windoš¸èws9x.‘1lMa“€è“un“sacco“noioso“do˜v˜erŽ¡reimpGostare›žîman•¸èualmen“te˜il˜men“u˜CMOS‘žÀogni˜v“olta˜c“he˜si˜cam“bia˜SO.˜Una˜soluzione˜€è˜di˜impGostare˜il˜CMOSŽ¡come–~ßnon“si“a•¸èv“esse–~ßun“SO‘~ÕPnP‘ÿ*¸,“ancš¸èhe“se“si“a˜vvia“Windo˜ws.‘î¾Uno“si“do˜vrebbšGe“asp˜ettare“cš¸èhe“Windo˜ws“sia“inŽ¡grado–5di“gestire“questa“situazione“nella“quale“gli“viene“presenš¸ètato“l'hardw˜are“gi€à“completamen˜te“conguratoŽ¡dal–ªBIOS.“Ci“si“aspGetta“inoltre“cš¸èhe“anc˜he“se“Windo˜ws“non“realizza“c˜he“l'hardw˜are“€è“gi€à“congurato,‘ÿUloŽ¡conguri–Ê/da“se“e“pGoi“funzioni“correttamenš¸ète.‘ЭMa“le“cose“non“sem˜brano“andare“cos€ì.‘ЭSem˜bra“c˜he“Windo˜wsŽ¡pšGossa– ydire“ai“suoi“driv¸èer“di“disp˜ositivš¸èo“solo“quello“c˜he“€è“presen˜te“nel“suo“Registry‘ÿ*¸.‘YžMa“la“reale“congurazioneŽ¡hardw¸èare–U (fatta“dal“BIOS)“€è“quella“salv‘ÿqÐata“nell'ESCD“e“p•Gotrebb“e–U non“essere“la“stessa“==ó  b> cmmi10µ>“¹problemi.Ž©ؼUn–™mošGdo“p˜er“renderle“uguali“€è“di“installare“(o“reinstallare)“Windo¸èws“quando“il“BIOS‘™O€è“imp˜ostato“p˜er“nessunŽ¡SO‘(þPnP‘ÿ*¸.‘bÎCi€ò–) doš¸èvrebbGe“presen˜tare“a“Windo˜ws“l'hardw˜are“congurato“dal“BIOS.“Se“questa“congurazione“€èŽ¡senza–ôÅconitti,‘ Windoš¸èws“teoricamen˜te“la“man˜terr€à“e“se“la“salv˜er€à“nel“suo“Registry‘ÿ*¸.‘QbA‘ô¬questo“pun˜to“l'ESCD‘ô¬eŽ¡in–ñ•Registry“sono“sincronizzati.‘PRSe“questa“cosa“funziona“(e“questa“e“l'ultima“vš¸èersione“dell'HO˜WTO),“fatemeloŽ¡sap•Gere›U p“erc•¸èh€é˜ho˜ricevuto˜solamen“te˜una˜notica˜di˜buon˜funzionamen“to.Ž¦Un–mCaltro“metošGdo“€è“di“rim•¸èuo“v“ere–mCi“disp˜ositivi“cš¸èhe“causa“problemi“in“Windo˜ws,‘³Kcliccando“su“rim˜uo˜vi“inŽ¡Gestione›9]P•¸èeriferic“he‘ÿ*¸.‘8P“oi˜si˜ria“vii˜con˜Nessun˜SO–9#PnP˜(lo˜si˜impGosti˜nel˜CMOS“all'inizio˜del˜b•Go“ot).ŽŽŽŒ‹ ò Û_2 ý ~?Ÿ„€ÕÁGŽÂ5.‘ñ8Come–Õgestire“le“sc®>hede“PnP’-5Ź12ŽŽ ÕÁ ýV¯Windo¸èws–kðpšGoi“reinstaller€à“i“disp˜ositivi,‘q¤teoricamen¸ète“usando“le“imp˜ostazioni“sulle“risorse-bus“congurate“dalŽ¤ ®BIOS.–g¥Aš¸èttenzione“c˜he“Windo˜ws“probabilmen˜te“p•Gotrebb“e–g¥c˜hiedere“di“inserire“il“CD‘ghdi“installazione“di“Windo˜wsŽ¡pGoic•¸èh€é›áhtalv“olta˜non˜riesce˜a˜tro“v‘ÿqÐare˜i˜driv“er˜(e˜altri˜le˜simili)˜anc“he˜se˜ci˜sono˜gi€à.‘JíCome˜pro“v‘ÿqÐa˜ho˜rimossoŽ¡una–yïscš¸èheda“NIC‘yæc˜he“a˜v˜ev‘ÿqÐa“driv˜er“compatibili“con“No˜v˜ell.‘ßîDuran˜te“il“ria˜vvio,‘ƒ#Windo˜ws“l'ha“reistallata“comeŽ¡Microsoft›net•¸èw“orking˜in“v“ece˜di˜No“v“ell.‘Z~Ci€ò˜signica˜c“he˜ho˜do“vuto˜reistallare˜il˜Clien“t˜No“v“ell.‘Z~F‘ÿ*¸atemi˜sapGereŽ¡ev•¸èen“tuali–U problemi“con“questo“metoGdo“(solo“se“questa“€è“l'ultima“vš¸èersione“di“questo“HO˜WTO).Ž©#ÃÄ4.2Ž‘¾Come–¸devš ono“essere“con˜trollate“le“risorse?ŽŸMª¹Questa–Þ`scelta“determina“il“metošGdo“con“cui“si“vuole“siano“allo˜cati“IR¸èQ‘Þ=e“DMA.“Se“imp˜ostata“su“auto‘ÿ*¸,‘°ilŽ¡BIOS‘¤’far€à–¤¿l'allošGcazione.‘6µSe“imp˜ostata“su“manš¸èual‘ÿ*¸,‘Èsi“riserv˜eranno“man˜ualmen˜te“alcuni“IR˜Q‘¤’pGer“usarli“con“leŽ¡scš¸èhede–•Qlegacy“(non“PnP).“Ora“il“BIOS‘•!p•Gotrebb“e–•Qo“meno“essere“conscio“delle“sc˜hede“legacy“presen˜ti.‘1‘Il“BIOSŽ¡vš¸èerr€à–.†a“conoscenza“delle“sc˜hede“legacy“presen˜ti“se“si“eseguir€à“ICU‘.|(o“simile)“sotto“Windo˜ws“pGer“dirglielo.‘d¢SeŽ¡ne–w°€è“a“conoscenza,‘€Tallora“si“proš¸èvi“ad“usare“auto‘ÿ*¸.‘Ù0Se“non“le“rilev‘ÿqÐa“allora“si“riservino“man˜ualmen˜te“gli“IR˜QŽ¡necessari–U pGer“le“scš¸èhede“ISA“legacy“e“si“lasci“quel“c˜he“resta“dell'alloGcazione“al“PnP“del“BIOS.Ž¦Ä4.3Ž‘¾Reinizializzare–¸la“congurazione?Ž©Mª¹Questa–~scelta“canceller€à“la“base“di“dati“ESCD›}ædel“BIOS˜cš¸èhe“con˜tiene“sia“il“mošGdo“in“cui“congurare“i“disp˜ositiviŽ¡PnP‘>;cš¸èhe–>Al'elenco“delle“congurazioni“dei“dispGositivi“legacy“(non“PnP).“Mai“fare“questa“cosa“a“meno“c˜he“nonŽ¡si–’Msia“con•¸èvin“ti›’Mc“he˜tale˜base˜di˜dati˜€è˜errata˜e˜dev'essere˜ricostruita.‘)Da˜qualc“he˜parte˜€è˜aermato˜c“he˜lo˜siŽ¡doš¸èvrebbGe–úrfare“solo“se“non“si“riesce“ad“a˜vviare“il“proprio“computer.‘awSe“il“BIOS‘úHpšGerde“i“dati“sui“disp˜ositiviŽ¡legacy‘ÿ*¸,–U allora“si“doš¸èvr€à“rieseguire“ICA“sotto“DOS/Windo˜ws“pGer“ristabilire“le“informazioni.ŽŸ(ÀœÁ5Ž‘ÁCome–G\gestire“le“scchede“PnPŽŸèÄ5.1Ž‘¾Inš tro_úduzione–¸alla“gestione“delle“sc˜hede“PnPŽ¦¹Oggigiorno–¾Kmolto“delle“n•¸èuo“v“e›¾Ksc“hede˜in“terne˜sono˜Plug-and-Pla“y˜(PnP).˜SebbGene˜esista˜del˜soft“w“are˜anc“heŽ¡sotto–xüLinš¸èux“pGer“gestire“il“PnP‘ÿ*¸,“non“€è“sempre“facile“da“usare.‘(Esistono“i“6“div˜ersi“metošGdi“sotto˜elencati“p˜er“tenerŽ¡testa–¼ al“PnP‘¼…(ma“alcuni“p•Gotrebb“ero–¼ non“essere“adatti“alla“propria“situazione).‘§ÿQuale,›Ö€o“quali,˜si“do¸èvrebbGeŽ¡usare–3rdipGende“dai“propri“scopi.‘fFQuello“cš¸èhe“ora“sem˜bra“il“pi€ù“con˜v˜enien˜te,‘:/a“lungo“termine“p•Gotrebb“e‘3rriv˜elarsiŽ¡essere–àµn€é“il“pi€ù“facile“n€é“il“migliore.‘@Un“metoGdo“apparen•¸ètemen“te–àµsemplice“€è“di“non“far“nien¸ète“e“lasciare“alŽ¡BIOS–œ†PnP“la–œµcongurazione,‘Á—ma“pšGoi“si“do¸èvranno“fare“un“p˜o'“di“ricerc¸èhe“p˜er“capire“quello“c¸èhe“il“BIOS‘œ†ha“fatto.Ž¡Un–²confronš¸èto“tra“tutti“questi“metoGdi“do˜vrebbGe“essere“scritto“da“qualcuno“c˜he“li“ha“pro˜v‘ÿqÐati“tutti.‘ˆQP˜otrebbGeŽ¡essere–U necessario“usarne“pi€ù“di“uno“pšGer“p˜ortare“a“buon“ne“il“la•¸èv“oro.ŽŸؼ‘¸ŽŽŽ‘¹5.2–r¡(Disabilitare“il“PnP)‘rhtramite“i“pGonš¸èticelli“o“soft˜w˜are“pGer“DOS/Windo˜ws“(ma“molte“sc˜hede“non“oronoŽ¡‘questa‘U pGossibilit€à);Ž©®‘¸ŽŽŽ‘¹5.3–^(Congurare“il“PnP›Kdal“BIOS)˜(pGer“il“bus“PCI˜si“ha“bisogno“solamen¸ète“di“un“BIOS˜PCI,“altrimen¸ètiŽ¡‘€è–U necessario“un“BIOS“PnP);Ž¦‘¸ŽŽŽ‘¹5.4–ñ”(Isapnp)“€è“un“programma“c¸èhe“si“pu€ò“sempre“usare“pšGer“congurare“i“disp˜ositivi“PnP‘ñkma“solo“nelŽ¡‘bus‘U ISAŽ¦‘¸ŽŽŽ‘¹5.5–U (Le“Utilit¸èy“PCI)“pGer“la“congurazione“del“bus“PCI;Ž¦‘¸ŽŽŽ‘¹5.7–Lø(Congurazione“T‘ÿ*¸ramite“Windoš¸èws)“e“successiv˜o“a˜vvio“di“Lin˜ux“da“Windo˜ws/DOS.“Da“usare“comeŽ¡‘ultima‘U risorsa;ŽŽŽŒ‹ ´ Û_2 ý ~?Ÿ„€ÕÁGŽÂ5.‘ñ8Come–Õgestire“le“sc®>hede“PnP’-5Ź13ŽŽ ÕÁ ýV¯‘¸ŽŽŽ‘¹5.6–U (Applicare“una“P•¸èatc“h–U al“Kernel)“pšGer“trasformare“Lin¸èux“in“un“sistema“op˜erativ¸èo“PnP;ŽŸ®‘¸ŽŽŽ‘¹5.8–U (Congurazione“F‘ÿ*¸atta“dal“Device“Drivš¸èer),“ma“p•Go“c˜hi–U lo“fanno.Ž©ؼOgn¸èuna–¯Jdelle“suddette“pšGossibilit€à“imp˜oster€à“le“risorse-bus“nell'hardw¸èare.‘:9Ma“solo“le“ultime“due“informerannoŽ¤ ®il–sngestore“del“dispGositivš¸èo“di“quan˜to“€è“stato“fatto.‘ÌkSolo“l'ultima“dice“tutto“al“driv˜er“(€è“il“driv˜er).‘ÌkIl“moGdo“nelŽ¡quale–>(viene“informato“il“drivš¸èer“dipGende“dal“driv˜er“stesso“e“pu€ò“essere“necessario“far“qualcosa“pGer“informarlo.Ž¡Si–U vš¸èeda“6“(Dire“al“Driv˜er“la“Congurazione).ŽŸ#ÃÄ5.2Ž‘¾Disabilitare–¸il“PnP“?ŽŸMª¹Molti–ê,dispšGositivi“sono“solamen¸ète“PnP‘êsenza“la“p˜ossibilit€à“di“disabilitarlo.‘MÚMa“p˜er“alcuni“si“p˜otrebb˜e“essere“inŽ¡grado–PPdi“disabilitare“il“PnP‘Ptramite“pšGon¸èticelli“o“eseguendo“il“programma“p˜er“Windoš¸èws“c˜he“si“€è“ricevuto“assiemeŽ¡al–¸ÒdispšGositiv¸èo“(congurazione“senza“p˜on¸èticelli).‘œ•Ci€ò“eviter€à“l'onere,‘Ѿsp˜esso“complicato,‘Ѿdella“congurazioneŽ¡PnP‘ÿ*¸.–_XNon“si“dimen•¸ètic“hi–_Xdi“dire“al“BIOS‘_Uc¸èhe“queste“risorse-bus“sono“riserv‘ÿqÐate.‘(Ci“sono“inoltre“alcune“ragioniŽ¡pšGer–U le“quali“si“p˜otrebb˜e“non“v¸èoler“disabilitare“il“PnP:Ž¦‘ 9b1.ŽŽŽ‘Se–Öºsi“ha“MS‘ÖWindoš¸èws“nella“stessa“macc˜hina,‘w allora“si“v˜orr€à“pGermettere“al“PnP‘Ödi“congurareŽ¡‘div•¸èersamen“te–U i“dispGositivi“sotto“Windoš¸èws“da“come“ha“fatto“sotto“Lin˜ux.Ž©®‘ 9b2.ŽŽŽ‘L'inš¸èterv‘ÿqÐallo–²ídi“selezione“dei“n˜umeri“IR˜Q‘²Õ(o“indirizzi“di“pšGorta)“ecc.‘Šæp˜otrebb˜e“essere“piuttosto“limitatoŽ¡‘nc¸èh€é–U non“si“usa“il“PnP‘ÿ*¸.Ž¦‘ 9b3.ŽŽŽ‘Si›ªop•Gotrebb“e˜a•¸èv“ere˜un˜device˜driv“er˜di˜Lin“ux˜c“he˜usa˜i˜meto•Gdi˜PnP‘ªp“er˜ricercare˜il˜disp“ositiv•¸èo˜c“heŽ¡‘con¸ètrolla.Ž¦‘ 9b4.ŽŽŽ‘Se–úsi“ha,›Þ°in“futuro,˜la“necessit€à“di“moGdicare“la“congurazione,˜pu€ò“essere“pi€ù“semplice“farlo“se“ilŽ¡‘dispšGositiv¸èo–U €è“PnP“(nessuna“mo˜dica“ai“p˜on¸èticelli“o“esecuzione“di“un“programma“p˜er“DOS/Windo¸èws).Ž¦‘ 9b5.ŽŽŽ‘Si–jðhanno“(o“si“aš¸èvranno)“altri“dispGositivi“PnP‘jëc˜he“dev˜ono“essere“congurati“e“quindi“si“dev˜e“com˜unqueŽ¡‘fornire–U il“PnP‘ÿ*¸.ŽŸؼUna–Zv¸èolta“congurati“come“dispšGositivi“non“PnP‘ÿ*¸,“non“p˜ossono“essere“congurati“n€é“da“un“qualsiasi“soft•¸èw“areŽ¡PnP›ª1n€é–ª‰dal“BIOS˜(nc¸èh€é“non“si“spšGostino“i“p˜onš¸èticelli“e/o“si“usi“ancora“il“soft˜w˜are“di“congurazione“pGerŽ¡DOS/Windo¸èws).ŽŸ#ÃÄ5.3Ž‘¾In troš_úduzione–¸all'uso“del“BIOS“p˜er“la“congurazione“PnPŽŸMª¹Se–öísi“ha“un“BIOS‘öÕPnP‘ÿ*¸,“questo“pu€ò“congurare“l'hardwš¸èare.‘RCi€ò“signica“c˜he“il“proprio“BIOS‘öÕlegge“le“ric˜hiesteŽ¡di–ØÁrisorse“da“tutti“i“dispšGositivi“e“li“congura“(allo˜ca“a“loro“le“risorse-bus).‘üc€È‘ØŸquasi“un“rimpiazzo“di“un“SOŽ¡PnP›§tranne–ºpGer“il“fatto“c¸èhe“il“BIOS˜non“assošGcia“i“disp˜ositivi“con“i“loro“gestori“n€é“dice“a“quest'ultimi“come“haŽ¡eettuato–ž“la“congurazione.‘4§Normalmenš¸ète“do˜vrebbGe“usare“la“congurazione“c˜he“ha“salv‘ÿqÐato“nella“sua“memoriaŽ¡non–Q§vš¸èolatile“(ESCD).“Se“tro˜v‘ÿqÐa“un“n˜uo˜v˜o“dispGositiv˜o“e“se“c'€è“un“conitto,‘RYil“BIOS“do˜vrebbšGe“fare“le“mo˜dic¸èheŽ¡necessarie–U alla“congurazione“e“non“user€à“esattamenš¸ète“quello“c˜he“c'era“nell'ESCD.ŽŸؼIl–d¿proprio“BIOS‘d»devš¸èe“suppGortare“tale“congurazione,‘h§ma“talv˜olta“non“le“fa“correttamen˜te“o“completamen˜te.Ž¡Un–öåv‘ÿqÐanš¸ètaggio“nell'uso“del“BIOS‘ö»€è“c˜he“€è“semplice“in“quan˜to“nella“maggior“parte“dei“casi“non“c'€è“nien˜te“daŽ¡impGostare–‹(se“non“dire“nel“men¸èu“CMOS›ŠÌdel“BIOS˜c¸èhe“non“si“ha“un“SO˜PnP).“Men¸ètre“alcuni“gestori“diŽ¡disp•Gositiv¸èo›Ò‘p“ossono˜essere˜in˜grado˜di˜rilev‘ÿqÐare˜automaticamen•¸ète˜quello˜c“he˜ha˜fatto˜il˜BIOS,˜in˜alcuni˜casiŽ¡sar€à–žônecessario“determinarlo“da“s€é“(non“sempre“facile).‘NüSi“v¸èeda“la“sezione“7“(Qual“€è“la“Mia“CongurazioneŽ¡Correnš¸ète?).‘ÅUn–07altro“v‘ÿqÐan˜taggio“€è“c˜he“il“BIOS‘/þfa“il“suo“la˜v˜oro“prima“dell'a˜vvio“di“Lin˜ux“cosicc˜h€é“tutte“leŽ¡risorse-bus–U sono“pronš¸ète“da“usare“(e“tro˜v‘ÿqÐate)“dal“driv˜er“del“dispGositiv˜o“c˜he“parte“p•Go“co‘U dop“o.ŽŽŽŒ‹— Û_2 ý ~?Ÿ„€ÕÁGŽÂ5.‘ñ8Come–Õgestire“le“sc®>hede“PnP’-5Ź14ŽŽ ÕÁ ýV¯Secondo–xÍla“MS‘xÄ€è“solo“opzionale“(non“ricš¸èhiesto)“c˜he“il“BIOS–xÄPnP“sia–xÍin“grado“di“eettuare“la“congurazioneŽ¤ ®PnP›Ï~dei–ÏždispGositivi“(senza“l'aiuto“di“MS˜Windoš¸èws).‘àùMa“sem˜bra“c˜he“la“maggior“parte“dei“BIOS‘Ï~fatti“dopGoŽ¡il–.“1996“??›ýØpGossano“farlo.˜Si“doš¸èvrebbGe“in˜viare“una“nota“di“ringraziamen˜to“se“lo“fanno“nel“moGdo“corretto.Ž¡Congurano–Y[sia“il“bus“ISA‘YZcš¸èhe“il“bus“PCI,“ma“mi“dicono“c˜he“alcuni“BIOS‘YZv˜ecc˜hi“riescano“a“congurare“soloŽ¡il–ï¢bus“PCI.“Pš¸èer“sapGerne“di“pi€ù“sul“proprio“BIOS,“si“cerc˜hi“nel“W‘ÿ*¸eb.‘O¬P˜er“piacere,‘ïnon“si“c˜hieda“a“me“in“quan˜toŽ¡non–3 ho“dati“in“propGosito.‘f+I›3dettagli“del“BIOS˜cš¸èhe“si“pu€ò“v˜oler“sapšGere“p˜otrebb˜ero“essere“dicili“da“tro¸èv‘ÿqÐare“(oŽ¡addirittura–îŸnon“dispGonibili).‘OUAlcuni“BIOS›î…hanno“minime“capacit€à“PnP˜e“pro¸èv‘ÿqÐano“girano“la“parte“pi€ù“dicileŽ¡della–Ðzcongurazione“alle“utilitš¸èy“pGer“Windo˜ws.‘ãŽSe“questo“succede“si“dev˜e“tro˜v‘ÿqÐare“un“altro“metoGdo“(come“leŽ¡isapnptošGols)–U o“pro¸èv‘ÿqÐare“ad“imp˜ostare“il“database“ESCD“se“il“BIOS“ne“ha“uno.‘q€Si“vš¸èeda“la“sezione“seguen˜te.ŽŸ ÖÂ5.3.1Ž‘#!\Il–Õdatabase“ESCD“del“BIOSŽŸMª¹Il–FæBIOS‘Fâmanš¸ètiene“in“un“database“non“v˜olatile“una“congurazione“PnP‘Fâc˜he“pro˜v˜er€à“ad“usare.‘l€ȑFâdetta“ESCDŽ¡(Extended–í³System“Conguration“Data,›S×o•¸èvv“ero–í³Dati“di“Congurazione“Estesa“del“Sistema).‘ ;8Ancora,˜laŽ¡presenza–Çldell'ESCD›ÇI€è“opzionale,‘ãÄma“la“maggior“parte“dei“BIOS˜ce“l'hanno.‘BDL'ESCD˜non“solo“immagazzina“laŽ¡congurazione–ÕÉdelle“risorse“di“tutti“i“dispGositivi“PnP‘Õ©ma“con¸ètiene“inoltre“le“informazioni“di“congurazione“deiŽ¡dispšGositivi–(önon“PnP‘(ë(e“se“li“segna“come“tali)“in“mo˜do“da“evitare“conitti.‘bÈI›(ëdati“dell'ESCD˜sono“solitamen¸èteŽ¡salv‘ÿqÐati–esin“un“cš¸èhip“e“rimangono“in˜tegri“quando“viene“tolta“l'alimen˜tazione,‘i‡ma“qualc˜he“v˜olta“sono“salv‘ÿqÐati“nelŽ¡disco‘U sso??Ž©ؼL'ESCD‘ëµ€è–ëÜpšGensata“p˜er“man¸ètenere“l'ultima“congurazione“usata,‘‹ma“se“si“usa“un“programma“come“isapnpŽ¡o–"Sle“utilitš¸èy“PCI‘"di“Lin˜ux“(c˜he“non“aggiornano“l'ESCD)›"allora“l'ESCD˜non“sapr€à“nienš¸ète“di“quello“c˜he“si“€èŽ¡fatto–#e“non“salv¸èer€à“questa“congurazione“nell'ESCD.“Un“buon“SO–PnP“aggiorna›#l'ESCD“cos€ì˜la˜si˜pu€ò˜usareŽ¡successiv‘ÿqÐamen¸ète–wLpGer“tutti“i“SO›wCnon“PNP˜(come“il“Lin¸èux“standard).‘ØMS˜Windo¸èws“pu€ò“fare“questa“cosa“soloŽ¡in–U casi“spGeciali.‘q€Si“vš¸èeda“la“sezione“5.3.2“(Usare“Windo˜ws“pšGer“Imp˜ostare“l'ESCD).Ž¦Pš¸èer–Gusare“quan˜to“impGostato“nell'ESCD‘Gci“si“assicuri“di“a˜v˜er“impGostato“Not“a“PnP›GOS“(SO˜non“PnP)“oŽ¡simile–‹qnel“BIOS.“Allora“ogni“vš¸èolta“c˜he“il“BIOS‘‹>parte“(prima“c˜he“sia“caricato“il“SO‘‹>Lin˜ux)“do˜vrebbGe“congurareŽ¡le–ý\cose“in“questo“moGdo.‘T?Se“il“BIOS‘ýFrilev›ÿqÐa“una“n•¸èuo“v˜a›ý\sc“heda˜PnP‘ýFc“he˜non˜€è˜nell'ESCD,˜allora˜dev“e˜alloGcare˜leŽ¡risorse-bus–æalla“scš¸èheda“e“aggiornare“l'ESCD.“P˜otrebbGe“anc˜he“do˜v˜er“cam˜biare“le“risorse-bus“assegnate“a“unaŽ¡scš¸èheda–U PnP“gi€à“esisten˜te“e“moGdicare“l'ESCD“di“conseguenza.Ž¦Se–« ogni“dispšGositivi“ha“salv‘ÿqÐato“la“sua“ultima“congurazione“nel“proprio“hardw¸èare,‘À‡non“sarebb˜e“necessaria“laŽ¡congurazione–×tdell'hardwš¸èare“ogni“v˜olta“c˜he“si“accende“il“PC.“Ma“non“funzionano“in“questo“moGdo“e“quindiŽ¡tutti–æ³i“dati“dell'ESCD‘æ—devš¸èono“essere“man˜ten˜uti“corretti“se“si“usa“il“BIOS›æ—pGer“il“PnP‘ÿ*¸.“Ci“sono“alcuni“BIOS˜c¸èheŽ¡non–ÌÌhanno“una“ESCD‘Ì­ma“hanno“un“pšGo'“di“memoria“non“v¸èolatile“p˜er“immagazzinare“informazioni“su“qualiŽ¡risorse-bus–U siano“riserv‘ÿqÐate“pGer“l'uso“con“scš¸èhede“non“PnP‘ÿ*¸.“Molti“BIOS“hanno“en˜tram˜bGe“le“cose.ŽŸ ÖÂ5.3.2Ž‘#!\Usare–ÕWindo®>ws“pšQÂer“imp˜ostare“l'ESCDŽŸMª¹Se–Ïhede“PnP’-5Ź15ŽŽ ÕÁ ýV¯p•Gotrebb“e–decidere“da“s€é“di“congurare“le“cose“nello“stesso“mošGdo“di“come“sono“imp˜ostate“nell'ESCD,“cosicc¸èh€éŽ¤ ®alla–U ne“sono“iden•¸ètic“he–U ma“pGer“una“coincidenza.Ž©ؼI›LWindo¸èws–‚9x“sono“sistemi“opGerativi“PnP˜e“congurano“automaticamenš¸ète“i“dispGositivi.‘*LMan˜tengono“il“proprioŽ¡database–÷¯PnP‘÷—bGen“nascosto“nel“Registry“(salv‘ÿqÐato“in“un“le“binario“di“Windo¸èws).‘RZNel“Registry“ci“sono“inoltreŽ¡un–Øsacco“di“altre“cose“relativ¸èe“alla“congurazione“oltre“alle“risorse-bus“PnP‘ÿ*¸.“C'€è“sia“una“congurazioneŽ¡correnš¸ète–Pydelle“risorse“PnP‘Pxin“memoria“c˜he“un'altra“(forse“la“stessa)“salv‘ÿqÐata“sul“disco“sso.‘oóP˜er“v˜edere“quellaŽ¡in–U memoria“(?)‘q€sotto“Windo¸èws98“o“pšGer“forzare“delle“mo˜dicš¸èhe“si“usi“Gestione“P˜eriferic˜he‘ÿ*¸.Ž¦In–2þWindo¸èws98“ci“sono“due“mošGdi“p˜er“aš¸èvviare“Gestione“P˜eriferic˜he:‘-<1.‘ Risorse“del“Computer“µ>“¹P˜annelloŽ¡di–¬8Conš¸ètrollo“µ>“¹Propriet€à“del“Sistema“µ>“¹Gestione“P˜eriferic˜he.–vÉ2.“(bGottone–¬8destro“del“mouse)“RisorseŽ¡del–ú Computer“µ>“¹Propriet€à“µ>“¹Gestione“P•¸èeriferic“he.‘`FP“oi–ú in“Gestione“P•¸èeriferic“he–ú si“selezioni“il“dispGositiv¸èoŽ¡(solitamen¸ète–cBun“prošGcesso“in“pi€ù“passi“se“ci“sono“pi€ù“disp˜ositivi“della“stessa“classe).‘ áPš¸èoi“si“clicc˜hi“su“Propriet€àŽ¡e–D¦pšGoi“su“Risorse‘ÿ*¸.‘­P¸èer“mo˜dicare“man•¸èualmen“te–D¦la“congurazione“si“disabiliti“Usa“imp˜ostazione“automaticaŽ¡e–]pGoi“si“cliccš¸èhi“su“Cam˜bia“ImpšGostazioni‘ÿ*¸.‘‰`Ora“si“probi“a“mo˜dicare“l'imp˜ostazione,‘_ma“Windo¸èws“p˜otrebb˜eŽ¡non–XñpšGermettere“la“mo˜dica.‘qSe“lo“p˜ermette,‘‹asi“€è“forzata“una“mo˜dica.‘qUn“messaggio“do¸èvrebb˜e“infomarmareŽ¡cš¸èhe–þ5si“sta“forzando.‘l¿Se“si“v˜ogliono“man˜tenere“le“impGostazioni“esisten˜ti“mostrate“da“Windo˜ws“ma“renderleŽ¡forzate‘ÿ*¸,–U allora“si“do¸èvr€à“forzare“una“mošGdica“in“qualcosa“e“p˜oi“riforzarla“al“suo“v‘ÿqÐalore“originale.Ž¦P•¸èer›*ƒv“edere˜cosa˜€è˜stato˜forzato˜in˜Windo“ws98˜si˜v“eda˜l'elenco˜dell'hardw“are˜forzato:‘GA‘þã vvio˜µ>˜¹Pro-Ž¡grammi–Aϵ>“¹Aš¸èccessori“µ>“¹Sistema“µ>“¹Informazioni“sul“Sistema“µ>“¹Risorse“Hardw˜are“µ>“¹Hardw˜are“F‘ÿ*¸orzato.Ž¡Quando–×si“forza“una“mošGdica“di“risorse-bus“in“Windo•¸èws,‘÷ydo“vrebb˜e–×mettere“tali“mo˜dicge“nell'ESCD‘Öß(aŽ¡patto–—'cš¸èhe“Windo˜ws“sia“c˜hiuso“correttamen˜te).‘7•Dalla“nestra“Informazioni“del“Sistema“si“pGossono“inoltreŽ¡ispšGezionare–U quali“IR¸èQ“e“p˜orte“IO“sono“allo˜cate“sotto“Windo¸èws.Ž¦Ancš¸èhe–¡Bse“Windo˜ws“non“mostra“conitti“nelle“risorse-bus,‘´Kp•Gotrebb“ero–¡Bessercene“sotto“Lin˜ux.‘UæQuesto“pGerc˜h€éŽ¡Windo¸èws›¶p•Gotrebb“e˜assegnare˜risorse-bus˜dieren•¸èti˜da˜quello˜c“he˜fa˜l'ESCD.˜Nel˜raro˜caso˜in˜cui˜tutti˜iŽ¡dispGositivi–÷lsotto“Windoš¸èws“siano“legagy“oppure“siano“stati“forzati‘ÿ*¸,‘ÿallora“le“congurazioni“di“Windo˜ws“eŽ¡dell'ESCD–U doš¸èvrebbGero“essere“iden˜tic˜he.ŽŸ ÖÂ5.3.3Ž‘#!\Aggiungere–Õun“n•®>uo“v“o›ÕdispQÂositiv“o˜(sotto˜Lin“ux˜o˜Windo“ws)ŽŸMª¹Se–f”si“aggiunge“un“n•¸èuo“v“o›f”dispGositiv“o˜PnP–fMe˜si˜ha˜il˜BIOS“impGostato˜a˜nessun˜SO“PnP‘ÿ*¸,‘ªñallora˜il˜BIOSŽ¡doš¸èvrebbGe–J•congurarlo“automaticamen˜te“e“salv‘ÿqÐare“la“congurazione“nell'ESCD.“Se“€è“un“dispGositiv˜o“legacyŽ¡non–U PnP“(o“uno“reso“tale“con“i“jumpšGer,“ecc.)‘q€allora“ci“sono“un“p˜o'“di“opzioni“p˜er“gestirlo.Ž¦Si–Sîpu€ò“dire“direttamenš¸ète“al“BIOS“(tramite“il“men˜u“di“congurazione“CMOS)“c˜he“certe“risorse-bus“(come“gliŽ¡IRš¸èQ)‘äLsono–ähriserv‘ÿqÐate“e“c˜he“non“dev˜ono“essere“alloGcate“dal“PnP‘ÿ*¸.“Ci€ò“non“mette“queste“informazioni“nell'ESCD.Ž¡Ma–Žuci“pu€ò“essere“una“scelta“nel“menš¸èu“del“BIOS‘Ž$c˜he“spGecica“quando,›ÜÊin“caso“di“conitto,˜queste“scelteŽ¡CMOS›zýhanno–{Ho“meno“priorit€à“su“quan¸èto“€è“salv‘ÿqÐato“nell'ESCD.“Un“altro“metoGdo“€è“di“eseguire“ICU˜sottoŽ¡DOS/Windoš¸èws.‘•§Un–¶‚altro“ancora“€è“di“installare“man˜ualmen˜te“il“dispGositiv˜o“sotto“Windo˜ws“9x/2k“e“pGoiŽ¡assicurarsi–Œàcš¸èhe“la“sua“congurazione“sia“forzata“(si“v˜eda“la“sezione“preceden˜te).‘ÀSe“€è“forzata“Windo˜wsŽ¡do¸èvrebbšGe–U aggiornare“l'ESCD“quando“si“sp˜egne“il“PC.ŽŸ#ÃÄ5.4Ž‘¾Isapnp–¸(parte“degli“isapnpto_úols)ŽŸMª¹Sfortunatamenš¸ète,‘s„buona–mpparte“della“doGcumen˜tazione“pšGer“gli“isapnpto˜ols“€è“ancora“dicile“da“comprendere“aŽ¡meno–´ cš¸èhe“non“si“conoscano“le“basi“del“PnP‘ÿ*¸.“Questo“HO˜WTO‘³àdo˜vrebbGe“aiutare,‘ÔAcome“d'altronde“aiuta“la“F‘þã A˜QŽ¡distribuita–’=con“il“programma.‘(׺isapnp“¹€è“solo“pšGer“i“disp˜ositivi“PnP›’-sul“bus“ISA˜(non“PCI).“L'esecuzione“delŽ¡programma–PpGer“Linš¸èux“isapnp“all'a˜vvio“del“sistema“congurer€à“tali“dispGositivi“secondo“i“v‘ÿqÐalori“delle“risorseŽ¡spšGecicate–^nel“le“/etc/isapnp.conf.‘µ;€È‘-p˜ossibile“creare“automaticamen¸ète“questo“le“di“congurazione,‘F®maŽ¡pšGoi– xlo“si“dev¸èe“mo˜dicare“man•¸èualmen“te– xp˜er“scegliere“tra“le“v‘ÿqÐarie“opzioni.‘XHCon“isapnp,‘™un“driv¸èer“di“disp˜ositiv¸èoŽ¡cš¸èhe–‹ƒsia“parte“del“k˜ernel“pu€ò“essere“eseguito“troppšGo“presto,‘™cio˜€è“prima“c¸èhe“isapnp“abbia“imp˜ostato“indirizzi,ŽŽŽŒ‹<± Û_2 ý ~?Ÿ„€ÕÁGŽÂ5.‘ñ8Come–Õgestire“le“sc®>hede“PnP’-5Ź16ŽŽ ÕÁ ýV¯ecc.–Fnell'hardwš¸èare.“Ci€ò–›ürisulta“nel“mancato“rilev‘ÿqÐamen˜to“del“dispGositiv˜o“da“parte“del“driv˜er.‘FIl“driv˜er“pro˜v‘ÿqÐaŽ¤ ®negli–U indirizzi“giusti,“ma“tali“indirizzi“non“sono“ancora“stati“impGostati“nell'hardw¸èare.Ž©ؼSe–üla“propria“distribuzione“installa“automaticamenš¸ète“gli“isapnptoGols,‘allora“probabilmen˜te“isapnp“€è“gi€à“auto-Ž¡maticamenš¸ète–¨Üeseguito“all'a˜vvio.‘8In“questo“caso,‘ËPtutto“quel“c˜he“si“dev˜e“fare“€è“moGdicare“il“le“/etc/isapnp.confŽ¡come–”spiegato“da“ºman‘?¬isapnp.conf¹‘ÿ*¸.‘U§Si“noti“cš¸èhe“questa“cosa“€è“equiv‘ÿqÐalen˜te“alla“congurazione“man˜uale“delŽ¡PnP‘w¢pšGoic¸èh€é–w«si“fanno“decisioni“su“come“congurare“il“tutto“mo˜dicando“tale“le“di“congurazione.‘Ù Se“si“usaŽ¡isapnp–bÆin“questo“mošGdo“e“si“ha“un“BIOS‘bÂPnP‘ÿ*¸,“si“do¸èvrebb˜e“dire“al“BIOS‘bÂ(quando“lo“si“congura)“c¸èhe“si“haŽ¡un–U sistema“opGerativ¸èo“PnP“??Ž¦Se–·ôsi“esegue“isapnp“una“v¸èolta“pšGer“congurare“i“disp˜ositivi“ISA‘·ÛPnP‘ÿ*¸,“ma“l'esecuzione“di“isapnp“fallisce“ogniŽ¡v•¸èolta›g$c“he˜il˜computer˜viene˜a“vviato,‘k¥allora˜se˜si˜ha˜MS‘gWindo“ws˜(95˜o˜98)˜sullo˜stesso˜PC‘gla˜cosa˜p•Gotrebb“eŽ¡essere–ädoš¸èvuta“al“seguen˜te“problema:‘quando“si“usa“MS‘ÑWindo˜ws“(95“o“98),‘°Windo˜ws“p•Gotrebb“e‘äcongurareŽ¡div•¸èersamen“te–3 le“scš¸èhede“PnP‘3in“moGdo“tale“c˜he“non“funzioneranno“correttamen˜te“(se“non“del“tutto)“quando“siŽ¡torna–åin“Lin¸èux.‘L&Si“pu€ò“usare“il“programma“pnpšGdump“p˜er“aiutarsi“nella“creazione“del“le“di“congurazione.Ž¡Questo–øpraticamenš¸ète“crea“un“le“di“congurazione“anc˜he“se“lo“si“dev˜e“mošGdicare“un“p˜o'“prima“di“p˜oterloŽ¡usare.‘n´Conš¸ètiene–©‡alcuni“commen˜ti“pšGer“aiutare“nella“mo˜dica.‘n´Se“si“usa“isapnp“p˜er“congurare“e“si“ha“unŽ¡BIOS‘$ïPnP‘ÿ*¸,–$ûprobabilmenš¸ète“si“do˜vr€à“dire“al“BIOS‘$ïc˜he“non“si“ha“un“sistema“opGerativ˜o“PnP‘$ïpGoic˜h€é“si“vuole“c˜heŽ¡il–BIOS‘ðsi“ošGccupi“di“congurare“i“disp˜ositivi“PCI.“Sebb˜ene“il“BIOS‘ðp˜ossa“congurare“i“anc¸èhe“disp˜ositivi“ISA,Ž¡isapnp–U com¸èunque“lo“rifar€à.Ž¦La– terminologia“usata“nel“le“/etc/isapnp.conf“all'inizio“pu€ò“semš¸èbrare“un“pGo'“ostica.‘³P˜er“esempio“pGer“unŽ¡indirizzo–>ÂIO‘>¼pari“a“0x3e8“si“p•Gotrebb“e›>Âin•¸èv“ece˜v“edere˜(IO–>¼0˜(BASE“0x3e8))‘ÿ*¸.‘j L'IO“0˜indica˜c¸èhe˜questo˜€è˜ilŽ¡primo–¶³(zeresimo)“inš¸èterv‘ÿqÐallo“di“indirizzi“IO‘¶šc˜he“questa“dispGositiv˜o“usa.‘–:Un“altro“mošGdo“p˜er“esprimire“questaŽ¡cosa–“™sarebbšGe:‘îqIO[0]“=“0x3e8“ma“isapnp“non“lo“fa“in“questo“mo˜do.‘,êIO‘“‰1“indica“il“secondo“in¸èterv‘ÿqÐallo“diŽ¡indirizzi–D¹usato“da“questo“dispšGositiv¸èo,‘Hecc.‘lINT‘Dµ0“ha“un“signicato“simile“ma“p˜er“gli“IR•¸èQ‘Dµ(in“terrupt).‘lUnaŽ¡singola–;scš¸èheda“pu€ò“con˜tenere“div˜ersi“dispGositivi“sici“e“la“spiegazione“di“prima“riguarda“solamen˜te“uno“diŽ¡questi.Ž©#ÃÄ5.5Ž‘¾Le–¸utilit y“PCIŽŸMª¹Il›`Yn•¸èuo“v“o˜pacc“hetto˜delle˜Utilit“y˜PCI‘`V(=˜pGciutils,‘c'incorrettamen“te˜detto˜p•Gcito“ols),‘c'do¸èvrebb“e˜p“ermettere˜diŽ¡eettuare›èman•¸èualmen“te˜la˜congurazione˜PnP‘ºsul˜bus˜PCI.˜lspGci˜elenca˜le˜risorse-bus,‘3Zmen“tre˜setpGciŽ¡imp•Gosta›²l'allo“cazione˜delle˜risorse˜nei˜disp“ositivi˜hardw•¸èare.‘ª7Sem“bra˜c“he˜setp•Gci˜sia˜p“ensato˜principalmen¸èteŽ¡pšGer–Zl'uso“negli“script“e“al“momen¸èto“p˜er“usarlo“si“dev¸èono“conoscere“i“dettagli“dei“registri“di“congurazioneŽ¡PCI.–U Questa“informazioni“non“sono“spiegate“qui“e“nemmeno“nella“pagina“man“di“setpGci.Ž¦Ä5.6Ž‘¾Applicare–¸una“patcš h“al“k˜ernel“p_úer“rendere“Lin˜ux“PnPŽŸMª¹Da•¸èvid›YeHo“w“ells˜ha˜creato˜una˜patc“h˜pGer˜farlo˜c“hiamata˜Lin“ux˜Kernel˜Conguration/Resource˜ManagerŽ¡(talv•¸èolta›êc“hiamata˜semplicemen“te˜Hardw“are˜Conguration˜Manager).‘ 0'Nel˜tardo˜1999˜la˜patc“h˜non˜eraŽ¡dispšGonibile–`wnel“suo“sito“w¸èeb.‘“†Ci€ò“p˜otrebb˜e“indicare“cš¸èhe“non“c'€è“una“patc˜h“dispšGonibile“p˜er“le“vš¸èersioni“recen˜tiŽ¡del‘U k¸èernel.ŽŸؼCon–Vrle“patcš¸èh“preceden˜ti“il“k˜ernel“risultan˜te“si“dicev‘ÿqÐa“fosse“stabile“anc˜he“se“erano“stati“segnalati“dei“bug.Ž¡La–Q¥patcš¸èh“include“doGcumen˜tazione“cone“il“serial.txt“pšGer“mostrare“come“trattare“la“p˜orta“seriale.‘gF‘ÿ*¸ornisceŽ¡le–I{nell'albšGero“/pro˜c“cosiccš¸èh€é“si“pu€ò“v˜edere“cosa“sta“accadendo“ed“in“uno“di“questi“€è“pGossibile“inserireŽ¡comandi›=¦attra•¸èv“erso˜il˜comando˜ec“ho˜p•Ger˜p“ersonalizzare˜la˜congurazione.‘+Un˜problema˜€è˜c¸èhe˜la˜maggiorŽ¡parte–dei“gestori“di“dispGositivš¸èo“non“sono“consci“delle“funzionalit€à“in˜troGdotte“da“questa“patc˜h“e“quindi“pGerŽ¡la–ãÌcongurazione“si“devš¸èono“usare“ancora“i“tradizionali“le“di“congurazione,‘wecc.‘ƒLa“pagina“w˜eb“€è‘ǘºhttp:Ž¡//www.astarte.free-‘€online.co.uk‘U ¹.ŽŽŽŒ‹Q’ Û_2 ý ~?Ÿ„€ÕÁGŽÂ6.‘ñ8Dire–Õla“congurazione“al“driv®>er’}¹17ŽŽ ÕÁ ýV¯Ä5.7Ž‘¾Congurazione–¸tramite“Windo wsŽ©Mª¹Si–½êsi“ha“Windoš¸èws9x“(o“2k)“sullo“stesso“PC,“allora“semplicemen˜te“si“a˜vvii“Windo˜ws“e“lo“si“lasci“congurareŽ¤ ®il–êëPnP‘ÿ*¸.“Pš¸èoi“si“a˜vvi“Lin˜ux“da“Windo˜ws“(o“da“DOS).“€È‘êÅstato“segnalato“c˜he“Windo˜ws“cancella“tutti“gli“IR˜QŽ¡dai–‚…registri“dei“dispGositivi“PCI.“Allora“Linš¸èux“segnala“questa“cosa“dicendo“c˜he“tro˜v‘ÿqÐa“un“IR˜Q‘‚yzero.‘ù®Quindi“siŽ¡p•Gotrebb“e–U non“essere“in“grado“di“usare“questo“metoGdo.ŽŸ"¾÷Ä5.8Ž‘¾Congurazione–¸fatta“dal“device“driv erŽ¦¹Alcuni–gestori“di“dispšGositiv¸èo“useranno“i“meto˜di“PnP‘Žp˜er“imp˜ostare“le“risorse-bus“nell'hardw¸èare“ma“solo“p˜er“iŽ¡dispGositiv•¸èo›NFc“he˜con“trollano.‘o7P“oic“h€é˜la˜congurazione˜l'ha˜fatta˜il˜driv“er,‘O¥o“vviamen“te˜quest'ultimo˜conosce˜laŽ¡congurazione–U e“non“€è“necessario“fornirgli“queste“informazioni.ŽŸؼIl–G(problema“in“questo“caso“€è“duplice.‘G—€È‘Fédicile“incorpGorare“tutto“questo“nel“drivš¸èer,‘ƒªe“il“driv˜er“p•Gotrebb“eŽ¡prendere–wþle“risorse-bus“di“cui“ha“bisogno“da“altri“dispšGositivi.‘ÚRende“le“cose“facili“p˜er“l'utenš¸ète,‘€µma“un“k˜ernelŽ¡Linš¸èux–U PnP“sarebbGe“migliore.‘q€Si“v˜eda“3.5“(Lin˜ux“Ha“Bisogno“Di“T›ÿ*¸ener“T˜esta“Meglio“al“PnP).ŽŸ"¾÷Ä5.9Ž‘¾Soft• w“are–¸e“do_úcumen tazione“sul“PnPŽŸ´å‘¸ŽŽŽ‘Åhomep–ÿ}/age›“°de“gli˜Isapnpto“ols‘U ºhttp://www.roestock.demon.co.uk/isapnptools/Ž¤ÑÚ‘¸ŽŽŽ‘ÅPatch–“°p›ÿ}/er“r˜ender˜e“il“kernel“Linux“PnP‘U ºhttp://www.astarte.free-‘€online.co.ukŽ¡‘¸ŽŽŽ‘ÅPr–ÿ}/o“getto–“°PnP“driver‘U ºhttp://www.io.com/~cdb/mirrors/lpsg/pnp-‘€linux.htmlŽ¡‘¸ŽŽŽ‘ÅSp–ÿ}/e“ciche–“°sul“PnP“del‘‚Ðla“Micr‘ÿ}/osoft‘U ºhttp://www.microsoft.com/hwdev/respec/pnpspecs.htmŽ¡‘¸ŽŽŽ‘¹Libro:‘6PCI‘Þ System–Þ)Arc¸èhitecture,›õô3rd“ed.‘IÙdi“T‘ÿ*¸om“Shanley“+,˜MindShare“1995.‘IÙT‘ÿ*¸ratta“le“caratteristic¸èheŽ© ®‘simili–U al“PnP“del“bus“PCI.Ž¡‘¸ŽŽŽ‘¹Libro:‘FzPlug–¿and“Plaš¸èy“System“Arc˜hitecture,‘Úte?’÷Ùѹ18ŽŽ ÕÁ ýV¯/etc/mošGdules–æassieme“con“i“propri“parametri.‘ÅÒIn“alcuni“altri“casi“le“risorse-bus“p˜ossono“essere“date“comeŽ¤ ®parametri–¡al“k¸èernel.›[«Sono“messe“nel“le“ºlilo.conf“¹come“ºappend=...¹.˜P¸èoi“dev'essere“eseguito“il“programmaŽ¡lilo–U pšGer“salv‘ÿqÐare“nel“co˜dice“di“aš¸èvvio“del“k˜ernel.Ž©ؼSebbGene–…bci“sia“una“grande“disuniformit€à“su“come“i“driv¸èer“scoprono“le“informazioni“sulle“risorse-bus,‘®îil“risultatoŽ¡nale–Ê´€è“lo“stesso.‘Òte?’÷Ùѹ19ŽŽ ÕÁ ýV¯‘ 9b2.ŽŽŽ‘Quale–U congurazione“(se“esiste)“€è“impšGostata“nel“disp˜ositivš¸èo“hardw˜are?ŽŸؼNaturalmenš¸ète–ìðla“congurazione“del“dispGositiv˜o“hardw˜are“e“del“suo“driv˜er“do˜vrebbGe“essere“la“stessa“(e“nor-Ž¤ ®malmenš¸ète–emlo“€è).‘¢gMa“se“le“cose“non“v‘ÿqÐanno“pGer“il“v˜erso“giusto,‘i€ci“pGossono“essere“delle“dierenze.‘¢gCi€ò“signicaŽ¡cš¸èhe–výil“driv˜er“ha“informazioni“incorrette“sulla“congurazione“reale“dell'hardw˜are.‘×E‘v²questo“pu€ò“essere“unŽ¡problema.‘‚Se–zil“soft•¸èw“are›zc“he˜si˜usa˜non˜spiega˜adeguatamen“te˜cosa˜c'€è˜c“he˜non˜v‘ÿqÐa˜(oppure˜non˜conguraŽ¡tutto–Üautomaticamenš¸ète)“allora“bisogna“in˜v˜estigare“pšGer“capire“come“sono“congurati“i“disp˜ositivi“hardw¸èareŽ¡e–â¶i“relativi“drivš¸èer.‘BSebbGene“i“device“driv˜er“di“Lin˜ux“do˜vrebbGero“dire“tutto“in“alcuni“casi“non“€è“sempliceŽ¡determinare–U cš¸èhe“cosa“€è“stato“impGostato“nell'hardw˜are.Ž©ؼUn–]altro“problema“€è“cš¸èhe“quando“si“v˜ede“un“messaggio“di“congurazione“sullo“sc˜hermo,‘ìqualc˜he“v˜olta“non“€èŽ¡cš¸èhiaro–y#se“la“congurazione“ripGortata“€è“quella“del“driv˜er“del“dispGositiv˜o,‘‚#del“dispGositiv˜o“stesso“o“di“en˜tram˜bi.Ž¡Se–ƒëal“drivš¸èer“del“dispGositiv˜o“€è“assegnata“una“congurazione“e“pGoi“questo“v˜erica“nell'hardw˜are“pGer“v˜edere“seŽ¡€è–ÂÀcongurato“nello“stesso“mošGdo,‘Þ(allora“la“congurazione“rip˜ortata“do¸èvrebb˜e“essere“quella“sia“dell'hardw¸èareŽ¡cš¸èhe–U del“driv˜er.Ž¦Ma–*Ÿalcuni“drivš¸èer“non“lo“farlo“in“quan˜to“pGossono“accettare“una“congurazione“senza“v˜ericarla.‘cUP˜er“esempio,Ž¡setserial–÷‰accetta“una“congurazione“senza“vš¸èericarla“(anc˜he“se“gli“si“dice“di“rilev‘ÿqÐare“le“risorse-bus).‘RNQuindiŽ¡setserial–U pu€ò“solamenš¸ète“dire“la“congurazione“del“driv˜er“e“non“quella“dell'hardw˜are.ŽŸ#ÃÄ7.1Ž‘¾Messaggi‘¸all'a vvioŽŸMª¹Alcune–Ó;informazioni“sulla“congurazione“pGossono“essere“ottenš¸èute“leggendo“i“messaggi“del“BIOS‘Óe“di“Lin˜uxŽ¡cš¸èhe–ÛWappaiono“sullo“sc˜hermo“quando“inizialmen˜te“si“a˜vvia“il“computer.‘ %SpGesso“questi“messaggi“scorronoŽ¡tropp•Go‘Ôvš¸èelo“cemen˜te›Ôp“er˜p“oterli˜leggere,‘+Áma˜dop“o˜c•¸èhe˜si˜sono˜fermati˜si˜prema˜alcune˜v“olte˜Shift+P“ageUpŽ¡pGer–g vš¸èedere“quelli“passati.‘§ort,“ecc.)Ž¦¹Nel–ôÀbus“ISA,“tecnicamen¸ète“non“c'€è“uno“spazio“di“indirizzi“di“congurazione,‘¨ma“c'€è“un“mošGdo“sp˜eciale“conŽ¡il–€Nquale“la“CPU›€Baccede“ai“registri“di“congurazione“PnP˜sulle“scš¸èhede“PnP‘ÿ*¸.“P˜er“questo“scopšGo“sono“allo˜cati“3Ž¡indirizzi–çTdi“I/O.“Non“sono“allošGcati“3“indirizzi“p˜er“ognš¸èuna“delle“sc˜hede,‘ áma“3“indirizzi“condivisi“da“tutte“leŽ¡sc¸èhede.Ž©ؼQuesti–«—3“indirizzi“sono“c¸èhiamati“read-pšGort“(p˜orta“di“lettura),‘Á5write-p˜ort“(p˜orta“di“scrittura)“e“address-p˜ortŽ¡(pšGosta–€„di“indirizzo).‘ó«Ogni“p˜orta“ha“la“dimensione“di“un“solo“bš¸èyte.‘ó«Ogni“sc˜heda“PnP‘€7ha“molti“indirizziŽ¡di–O†congurazione“cosiccš¸èh€é“solamen˜te“questi“3“indirizzi“non“sono“nemmeno“sucien˜ti“pGer“i“registri“di“unaŽ¡sola›ë/sc•¸èheda.‘3¬P“er˜com“unicare˜con˜una˜certa˜sc“hede,‘²€è˜in“viato˜a˜tutte˜le˜sc“hede˜nella˜write-pGort˜un˜n“umeroŽ¡spšGeciale–³assegnato“alla“sc¸èheda“(handle).‘‹jDop˜o“di“cš¸èhe“la“sola“sc˜heda“c˜he“rimane“in“ascolto“€è“quella“conŽ¡quell'handle.‘G9Allora–œ^l'indirizzo“del“registro“di“congurazione“(di“quella“scš¸èheda)“€è“in˜viato“nella“address-pGortŽ¡(di–‹útutte“le“scš¸èhede““ma“solamen˜te“una“€è“in“ascolto).‘La“com˜unicazione“successiv‘ÿqÐa“inizia“con“un“registro“diŽ¡congurazione–U su“quella“scš¸èheda“leggendolo“dalla“read-pGort“oppure“scriv˜endolo“nella“write-pGort.Ž¦La–6\write-pšGort“€è“sempre“a“A79“e“la“address-p˜ort“€è“sempre“a“279“(hex).‘4La“read-p˜ort“in•¸èv“ece–6\non“€è“ssataŽ¡ma–¥÷€è“impGostata“da“soft•¸èw“are–¥÷di“congurazione“ad“un“qualcš¸èhe“indirizzo“c˜he“si“suppGone“non“en˜tri“in“conittoŽ¡con–†ªnessun'altra“scš¸èheda“ISA.“Se“c'€è“un“conitto,‘Ó cam˜bier€à“l'indirizzo.‘T‘ÿ*¸utte“le“sc˜hede“PnP‘†[saranno“pGoiŽ¡programmate–<;con“questo“indirizzo.‘i4Quindi“se“diciamo“si“usa“isapnp“pšGer“imp˜ostare“o“v¸èericare“i“dati“dellaŽ¡congurazione–U si“dev¸èe“conoscere“l'indirizzo“di“questa“read-pGort.ŽŽŽŒ‹—û Û_2 ý ~?Ÿ„€ÕÁGŽÂ8.‘ñ8AppQÂendice’„x#¹21ŽŽ ÕÁ ýV¯Â8.1.2Ž‘#!\In®>terv‘ÿ\|alli–Õdi“indirizziŽ©Mª¹T‘ÿ*¸alvš¸èolta–,üin“questo“doGcumen˜to“il“termine“indirizzi“€è“usato“pGer“in˜tendere“un“in˜terv‘ÿqÐallo“con˜tiguo“di“indirizzi.Ž¤ ®P•¸èoic“h€é–Y¬gli“indirizzi“sono“dati“in“bš¸èyte,‘šÏun“indirizzo“singolo“con˜tiene“solamen˜te“un“b˜yte,‘šÏmen˜tre“l'I/O‘Yie“laŽ¡memoria–zprincipale“ne“hanno“bisogno“di“molti“di“pi€ù.‘ðŽ€È‘-quindi“spGesso“usato“un“in¸èterv‘ÿqÐallo“di“diciamo“8Ž¡bš¸èyte–´[pGer“gli“indirizzi“I/O‘´Cmen˜tre“l'in˜terv‘ÿqÐallo“di“indirizzi“in“memoria“principale“allošGcato“ad“un“disp˜ositiv¸èo“€èŽ¡molto–4 maggiore.‘fzP¸èer“una“pšGorta“seriale“(un“disp˜ositivš¸èo“di“I/O)‘4€è“sucien˜te“spGecicare“l'indirizzo“di“partenzaŽ¡dell'indirizzo–]žI/O‘]œdel“dispGositivš¸èo“(ad“esempio“3F8)“in“quan˜to“€è“bGen“noto“c˜he“l'in˜terv‘ÿqÐallo“di“indirizzi“pGer“unaŽ¡pGorta–U seriale“€è“di“soli“8“b¸èyte.‘q€L'indirizzo“di“partenza“€è“noto“come“base“address“(indirizzo“base).ŽŸ ÖÂ8.1.3Ž‘#!\Spazio–Õdi“indirizziŽ¦¹In–PÀISA,“pGer“accedere“sia“allo“spazio“di“indirizzi“I/O‘P¿c¸èhe“a“quello“di“memoria“(principale)“€è“usato“lo“stessoŽ¡bus–‰ indirizzi“(address“bus)“(le“linee“usate“nel“bus“sono“condivise).‘Come“fa“un“dispšGositiv¸èo“a“sap˜ere“quandoŽ¡un–Žindirizzo“c¸èhe“appare“sull'address“bus“€è“un“indirizzo“di“memoria“o“un“indirizzo“I/O?“Beh,‘œ]ci“sono“4“lineeŽ¡dedicate–§sul“bus“c¸èhe“traspšGortano“questa“informazione“ed“altro.‘hÎSe“una“b˜en“determinata“di“queste“4“linee“€èŽ¡attiv‘ÿqÐa‘ÿ*¸,‘ dice–c¸èhe“la“CPU›óvuole“leggere“da“un“indirizzo“I/O˜e“quindi“la“memoria“principale“ignora“l'indirizzoŽ¡sul–jÓbus.›²šLe“altre“3“linee“serv¸èono“pGer“scopi“analoghi.˜In“brev¸èe:‘œçesistono“linee“di“lettura“e“di“scrittura“sia“pGerŽ¡gli–U indirizzi“di“memoria“principale“c¸èhe“pGer“quelli“di“I/O“(4“linee“in“tutto).ŽŸؼNel–=bus“PCI‘ c'€è“la“stessa“idea“di“base,›GÄc¸èhe“usa“sempre“4“linee,˜ma“il“tutto“viene“fatto“in“maniera“un“pGo'Ž¡div•¸èersa.‘d‹In“v“ece–.@di“essere“attiv‘ÿqÐa“solo“una“delle“4“linee,‘6in“queste“viene“pGosto“un“nš¸èumero“binario“(16“div˜erseŽ¡pGossibilit€à).‘T¯Quattro–þ«di“questi“16“nš¸èumeri“serv˜ono“gli“spazi“di“I/O‘þ–e“di“memoria“come“visto“prima.‘T¯Inoltre“c'€èŽ¡ancš¸èhe–/Puno“spazio“di“indirizzi“di“congurazione“c˜he“usa“altri“2“n˜umeri.‘dåGli“altri“10“n˜umeri“extra“sono“lasciatiŽ¡pGer–U altri“scopi.ŽŸ ÖÂ8.1.4Ž‘#!\V›ÿ ºerica–Õdell'in®>terv‘ÿ\|allo“(T˜est“ISA“pQÂer“i“conitti“di“indirizzo“I/O)Ž¦¹Nel–òÙbus“ISA,“c'€è“un“metoGdo“costruito“denš¸ètro“ogni“sc˜heda“PnP‘ò°pGer“v˜ericare“c˜he“non“ci“siano“altre“sc˜hedeŽ¡cš¸èhe–|(usano“gli“stessi“indirizzi.‘æ—Se“due“o“pi€ù“sc˜hede“usano“gli“stessi“indirizzi“I/O,“probabilmen˜te“neanc˜he“unaŽ¡scš¸èheda–HÀfunzioner€à“bGene“(se“non“tutte).‘m`Un“buon“soft˜w˜are“di“PnP‘H½do˜vrebbšGe“assegnare“le“risorse-bus“in“mo˜doŽ¡da–¬7evitare“i“conitti,‘Áüma“ancš¸èhe“in“questo“caso“una“sc˜heda“legacy“p•Gotrebb“e–¬7nascondersi“da“qualc˜he“parte“loŽ¡stesso‘U indirizzo.ŽŸؼIl–Á‘test“inizia“con“una“scš¸èheda“c˜he“mette“un“n˜umero“di“con˜trollo“nei“proprio“registri“I/O.“Successiv‘ÿqÐamen˜te“ilŽ¡soft•¸èw“are–7%PnP‘7lo“legge“e“vš¸èerica“di“a˜v˜er“letto“lo“stesso“n˜umero“di“con˜trollo.‘g‚Se“non“€è“v˜ero,‘=$qualcosa“€è“andatoŽ¡storto–ûÀ(ad“esempio“un'altra“scš¸èheda“con“lo“stesso“n˜umero“di“con˜trollo).‘e`RipGete“allora“lo“stesso“test“con“unŽ¡altro–[Þnš¸èumero“di“con˜trollo.‘…»P˜oic˜h€é“in“realt€à“v˜erica“l'in˜terv‘ÿqÐallo“di“indirizzi“I/O‘[Ýassegnati“alla“sc˜heda,‘]Ž€è“dettoŽ¡range›lc•¸èhec“k˜(v“erica˜di˜in“terv‘ÿqÐallo).‘]DUn˜nome˜migliore˜p•Gotrebb“e˜essere˜v¸èerica˜dei˜conitti˜di˜indirizzo.‘]DSeŽ¡c'€è–U un“conitto“di“indirizzo“si“ottiene“un“messaggio“d'errore“e“lo“si“devš¸èe“risolv˜ere“pGer“proprio“con˜to.ŽŸ ÖÂ8.1.5Ž‘#!\Com•®>unicare›Õdirettamen“te˜attra“v“erso˜la˜memoriaŽ¦¹T‘ÿ*¸radizionalmenš¸ète,‘(Vla–#maggior“parte“dei“dispGositivi“I/O‘usano“solamen˜te“la“memoria“I/O‘pGer“com˜unicare“conŽ¡la– ¦CPU.“Pš¸èer“esempio,‘9Hla“pGorta“seriale“lo“fa.‘•Il“device“driv˜er,‘9Hin“esecuzione“nella“CPU,“v˜orrebbGe“leggere“eŽ¡scrivš¸èere–?dati“sia“dallo/nello“spazio“di“indirizzi“I/O‘>þc˜he“dalla/nella“memoria“principale.‘j!Il“moGdo“pi€ù“v˜eloGce“siŽ¡a¸èvrebbšGe–}îse“il“disp˜ositivš¸èo“stesso“mettesse“i“dati“direttamen˜te“nella“memoria“principale.‘ëéUn“mošGdo“p˜er“farlo“€èŽ¡usare–}Li“2.5“(Canali“DMA)‘}Bo“il“bus“mastering‘ÿ*¸.‘êUn“altro“mošGdo“€è“di“allo˜care“al“disp˜ositiv¸èo“un“p˜o'“di“spazioŽ¡in–èVmemoria“principale.‘+#In“questo“mošGdo“il“disp˜ositivš¸èo“legge“e“scriv˜e“direttamen˜te“nella“memoria“principaleŽ¡senza–U preošGccuparsi“di“DMA“e“bus“mastering.‘q€T‘ÿ*¸ale“disp˜ositivš¸èo“pu€ò“usare“anc˜he“indirizzi“I/O.ŽŽŽŒ‹©O Û_2 ý ~?Ÿ„€ÕÁGŽÂ8.‘ñ8AppQÂendice’„x#¹22ŽŽ ÕÁ ýV¯Ä8.2Ž‘¾In terrupt–¸“DettagliŽ©Mª¹Gli–bûinš¸èterrupt“traspGortano“un“sacco“di“informazioni,‘¦qma“solo“indirettamen˜te.‘›Il“segnale“di“in˜terrupt“(unaŽ¤ ®tensione–Êin“una“linea)“dice“semplicemenš¸ète“ad“un“c˜hip“c˜hiamato“in˜terrupt“con˜troller“(con˜trollore“delle“in-Ž¡terruzioni)–LPcš¸èhe“un“certo“dispGositiv˜o“c˜hiede“un“pGo'“di“attenzione.‘WL'in˜terrupt“con˜troller“allora“lo“segnalaŽ¡alla–û‰CPU.“La“CPU‘û_troš¸èv‘ÿqÐa“il“driv˜er“pšGer“questo“disp˜ositivš¸èo“e“esegue“una“parte“di“esso“nota“come“in˜terruptŽ¡service–šòroutine“(routine“di“servizio“dell'inš¸èterrupt)“o“in˜terrupt“handler‘ÿ*¸.‘BõQuesta“routine“pro˜v‘ÿqÐa“a“capireŽ¡cos'€è–;²successo“e“pšGoi“si“o˜ccupa“del“problema,‘uVcome“il“trasferimen¸èto“di“dati“da“(o“nel)“disp˜ositiv¸èo.‘%5QuestoŽ¡programma–C3(routine)“pu€ò“facilmenš¸ète“scoprire“cos'€è“successo“in“quan˜to“il“dispGositiv˜o“ha“dei“registri“ad“unŽ¡indirizzo–é_noto“al“soft•¸èw“are–é_di“gestione“(premesso“cš¸èhe“le“informazioni“sul“n˜umero“IR˜Q›éDe“l'indirizzo“di“I/O˜sianoŽ¡impGostate–Âcorrettamenš¸ète).‘ËeQuesti“registri“con˜tengono“informazioni“sullo“stato“del“dispGositiv˜o.‘ËeIl“soft˜w˜areŽ¡legge–бil“con•¸èten“uto–бdi“questi“registri“e“ispGezionandone“il“con•¸èten“uto,‘ë.scopre–бcos'€è“successo“e“in¸ètraprende“l'azioneŽ¡appropriata.ŽŸؼQuindi–»ogni“device“drivš¸èer“ha“bisogno“di“sapGere“su“quale“n˜umero“di“in˜terrupt“(IR˜Q)‘ºërestare“in“ascolto.‘£1NelŽ¡bus–ÀPCI‘Às(e“pšGer“le“p˜orte“seriali“sul“bus“ISA‘Àsa“partire“dal“k¸èernel“2.2)“€è“p˜ermesso“c¸èhe“due“(o“pi€ù)“disp˜ositiviŽ¡condividano–£lo“stesso“nš¸èumero“IR˜Q.“Quando“a˜vviene“tale“in˜terrupt,‘ÛÄla“CPU‘Resegue“la“routine“di“servizioŽ¡dell'in¸èterruzione–ÏÉpšGer“tutti“questi“disp˜ositivi“cš¸èhe“usano“quell'in˜terrupt.‘á|La“prima“cosa“c˜he“fa“la“prima“delleŽ¡routine–.€è“di“conš¸ètrollare“pGer“v˜edere“se“l'in˜terrupt“€è“eettiv‘ÿqÐamen˜te“a˜vv˜en˜uto“pšGer“il“suo“disp˜ositiv¸èo.‘ü`Se“nonŽ¡c'erano–U in¸èterrupt“(falso“allarme)“la“routine“termina“e“parte“la“successiv‘ÿqÐa“routine“di“servizio,“ecc.ŽŸ#ÃÄ8.3Ž‘¾In terrupt‘¸PCIŽ¦¹Gli–Ñinš¸èterrupt“PCI‘Цsono“div˜ersi,‘0ma“pGoic˜h€é“solitamen˜te“sono“mappati“su“IR˜Q‘Цsi“compGortano“quasi“nelloŽ¡stesso–˲moGdo.‘Õ6Una“dierenza“sostanziale“€è“cš¸èhe“gli“in˜terrupt“PCI‘ËQpGossono“essere“condivisi.‘Õ6P˜er“esempioŽ¡l'IR¸èQ5–¥Øpu€ò“essere“condiviso“da“due“dispGositivi“PCI.“Questa“funzionalit€à“di“condivisione“€è“automatica:‘ðnonŽ¡€è–RÌnecessario“hardwš¸èare“o“soft˜w˜are“spGeciale.‘p¹Si“sono“a˜vute“notizie“di“situazioni“nelle“quali“questa“condivisioneŽ¡non–Q funzionaš¸èv‘ÿqÐa,‘QÜma“solitamen˜te“era“do˜vuto“a“difetti“nel“soft˜w˜are“di“gestione“del“dispGositiv˜o.‘p$Si“suppGone“c˜heŽ¡tutti–¶i“device“driv¸èer“pšGer“i“disp˜ositivi“PCI‘µ÷forniscano“la“condivisione“degli“inš¸èterrupt.‘<€Si“noti“c˜he“non“€è“pGossibileŽ¡condividere–hlo“stesso“inš¸èterrupt“tra“il“bus“ISA‘he“il“bus“PCI.“Com˜unque,‘lÐle“condivisioni“illegali“funzionerannoŽ¡a–‚ patto“cš¸èhe“i“dispGositivi“in“conitto“non“siano“in“uso“nello“stesso“istan˜te.‘ø?In“uso“qui“signica“c˜he“un“€è“inŽ¡esecuzione–U un“programma“c¸èhe“apre“il“device“nel“suo“coGdice“C“di“programmazione.Ž©ؼ€È›‚necessario–‚&conoscere“alcuni“dettagli“del“sistema“di“in¸èterrupt“PCI˜pšGer“p˜oter“imp˜ostare“il“CMOS‘‚del“BIOSŽ¡o–ii“pGonš¸èticelli“nelle“v˜ecc˜hie“sc˜hede“PCI.“Ogni“sc˜heda“PCI‘i‹ha“4“pGossibili“in˜terrupt:‘šaINT‘ÿ*¸A#,–n­INTB#,“INTC#Ž¡e–¬INTD#.‘†#Quindi“pšGer“un“sistema“a“7“slot“ci“p˜ossono“essere“7“x“4“=“28“divš¸èerse“linee“di“in˜terrupt.‘†#Ma“leŽ¡sp•Gecic¸èhe› p“ermettono˜un˜n•¸èumero˜minore˜di˜linee˜di˜in“terrupt.‘´BQuesto˜non˜€è˜troppGo˜restrittiv“o˜in˜quan“toŽ¡gli–jìinš¸èterrupt“pGossono“essere“condivisi.‘²åMolti“bis“PCI‘j¥sem˜brano“essere“fatti“con“solo“4“linee“di“in˜terrupt.Ž¡Chiamiamole–‡linee“(connessioni“o“tracce)“W,“X,“Y›†úe“Z.“SuppGoniamo“di“progettare“l'in¸èterrupt“B˜dello“slot“3Ž¡come–å‹inš¸èterrupt“3B.“Allora“la“linea“W‘åep•Gotrebb“e–å‹essere“usato“pGer“condividere“gli“in˜terrupt“1A,“2B,“3C,“4D,Ž¡5A,–ò6B›òue“7C.“Ci€ò“€è“fatto“connettendo“sicamen¸ète“la“linea“W˜alla“linee“1A,“2B,“ecc.‘IøNello“stesso“moGdo“laŽ¡linea›»ŽX‘»sp•Gotrebb“e˜essere˜connessa˜alle˜linee˜1B,˜2C,˜3D,˜4A,˜5B,˜6C‘»se˜7D.˜P•¸èoi,›Õ)all'a“vvio,˜il–»ŽBIOS‘»smappa“leŽ¡linee–’žX,“W,“Y›’Že“Z˜su“IRš¸èQ.“Dop•Go“dic˜h€é–’žscriv˜e“l'IR˜Q‘’Žsul“quale“€è“mappato“ogni“dispGositiv˜o“den˜tro“un“registroŽ¡hardw•¸èare›U presen“te˜su˜ogni˜dispGositiv“o.‘q€Ora˜c“hiunque˜in“terroghi˜il˜dispGositiv“o˜pu€ò˜tro“v‘ÿqÐare˜quale˜IR“Q˜usa.Ž¦Le–summenzionate“linee“X,“W,“Y›Žóe“Z˜sono“eticš¸èhettate“nelle“spGecic˜he“PCI‘Žócome“INT‘ÿ*¸A#,–zINTB#,“INTC#Ž¡e–tŸINTD#.‘ÏýQuesta“notazione“PCI‘t—uciale“pu€ò“confondere“in“quan¸èto“ora“INT‘ÿ*¸A#“ha“due“pGossibili“signicatiŽ¡a–Cžseconda“si“stia“parlando“di“uno“slot“o“del“bus“PCI.“P¸èer“esempio,‘Gse“3C›Cš€è“mappato“su“X˜allora“diciamo“c¸èheŽ¡l'INTC#–U dello“slot“3“€è“connesso“a“INT‘ÿ*¸A#“(X)“del“bus“PCI.“Notazione“piuttosto“confusa.Ž¦Inoltre–m$c'€è“un“altro“vincolo.‘¹‹Uno“slot“PCI‘mdevš¸èe“usare“pGer“primo“l'in˜terrupt“con“la“lettera“pi€ù“bassa.‘¹‹QuindiŽ¡se–†+una“slot“usa“solo“un“in•¸èterrupt,‘’mdev“e–†+essere“INT›ÿ*¸A#.‘ Se“ne“usa“due“dev¸èono“essere“INT˜A#“e“INTB#,‘’mecc.Ž¡Una–Æúscš¸èheda“in“uno“slot“pu€ò“a˜v˜ere“su“no“ad“8“dispšGositivi,‘ãqma“p˜er“questi“ci“sono“solo“4“in¸èterrupt“PCI.“Ci€òŽŽŽŒ‹¼ Û_2 ý ~?Ÿ„€ÕÁGŽÂ8.‘ñ8AppQÂendice’„x#¹23ŽŽ ÕÁ ýV¯v‘ÿqÐa–*—bGene“lo“stesso“in“quanš¸èto“gli“in˜terrupt“pšGossono“essere“condivisi“in“mo˜do“tale“cš¸èhe“ogn˜uno“degli“8“dispGositiviŽ¤ ®(se–­esistono)“pu€ò“a•¸èv“ere–­un“inš¸èterrupt.‘zÇLa“lettera“dell'in˜terrupt“PCI‘­vdi“un“dispGositiv˜o“spGesso“€è“ssa“e“scrittaŽ¡nell'hardwš¸èare–U del“dispGositiv˜o.Ž©ؼIl–:¦BIOS›:kassegna“IR•¸èQ˜(in“terrupt)–:¦in“moGdo“da“evitare“i“conitti“con“gli“IR•¸èQ˜c“he–:¦sa“sono“gi€à“assegnati“sulŽ¡bus–°ïISA.“T‘ÿ*¸alvš¸èolta“nel“men˜u“CMOS›°×del“BIOS˜€è“pGossibile“assegnare“gli“IR¸èQ˜alle“sc¸èhede“PCI˜(ma“non“€è“cos€ìŽ¡semplice–ÂMcome“spiegato“sopra).‘@Ci“sono“situazioni“nelle“quali“Windoš¸èws“azzera“tutti“i“n˜umeri“IR˜Q‘Â'delle“sc˜hedeŽ¡PCI‘ôdop•Go›ôl'imp“ostazione˜della˜mappatura˜degli˜IR¸èQ.˜Se˜p“oi˜qualcuno˜a•¸èvvia˜Lin“ux˜da˜Windo“ws˜ottiene˜comeŽ¡risultato–U cš¸èhe“Lin˜ux“pu€ò“tro˜v‘ÿqÐare“solo“IR˜Q“n˜ulli“e“quindi“sbagliati.Ž¦Si›ánp•Gotrebb“e˜p“ensare˜c¸èhe˜p“oic•¸èh€é˜il˜PCI‘áJsta˜usando˜gli˜IR“Q–áJ(il˜bus˜ISA)“p•Gotrebb“e˜essere˜len¸èto,‘ecc.‘iNon˜inŽ¡realt€à.‘ã8I–Ð>c¸èhip›Ð]ISA“di˜con•¸ètrollo˜degli˜in“terrupt˜pGosseggono˜linee˜dirette˜di˜in“terrupt˜c“he˜v‘ÿqÐanno˜alla˜CPU‘Ð>inŽ¡moGdo–<da“ottenere“attenzione“immediata.‘i!Menš¸ètre“i“segnali“nei“bus“ISA‘;þdi“dati“e“indirizzi“dev˜ono“passare“pGerŽ¡il–U bus“PCI“pGer“ottenere“la“CPU,“i“segnali“di“IRš¸èQ“ci“v‘ÿqÐanno“direttamen˜te.ŽŸ#ÃÄ8.4Ž‘¾Isolamen toŽŸMª¹Questa–¢2cosa“€è“pGertinenš¸ète“solo“con“il“bus“ISA.“L'isolamen˜to“(isolation)“€è“un“complesso“metošGdo“p˜er“assegnareŽ¡un–`¾handle“tempGoraneo“(nš¸èumero“iden˜ticativ˜o“o“Card“Select“Num˜bšGer“=“CSN)‘`€ad“ogni“disp˜ositivš¸èo“PnP‘`€presen˜teŽ¡nel–š£bus“ISA.“SebbšGene“esistano“mo˜di“molto“pi€ù“ecien¸èti“(ma“pi€ù“complessi)“p˜er“fare“questa“cosa,‘¿ïalcuni“diconoŽ¡c¸èhe–Ö‘questo“€è“un“metošGdo“semplice.‘õҀȑÖousato“solo“un“indirizzo“di“scrittura“p˜er“tutte“le“scritture“PnP‘Öoa“tuttiŽ¡i–©dispGositivi“PnP‘ÿ*¸,“cosiccš¸èh€é“quello“c˜he“viene“scritto“in“questo“indirizzo“v‘ÿqÐa“a“tutti“i“dispGositivi“PnP‘ÂŒc˜he“sonoŽ¡in–ýæascolto.‘kÑQuesto“indirizzo“di“scrittura“€è“usato“pGer“inš¸èviare“(assegnare)“un“handle“univ˜oGco“ad“ogn˜uno“deiŽ¡dispGositivi–4’PnP‘ÿ*¸.“Questa“assegnazione“ricš¸èhiede“c˜he“solo“un“dispGositiv˜o“sia“in“attesa“quando“€è“in˜viato“(scritto)Ž¡l'handle–õñin“questo“indirizzo“comš¸èune.‘QÆT‘ÿ*¸utti“i“dispGositivi“PnP‘õÙhanno“un“n˜umero“di“serie“univ˜oGco“c˜he“usano“pGerŽ¡il–0ƒproGcesso“di“isolamenš¸èto.‘eLF‘ÿ*¸are“l'isolamen˜to“€è“qualcosa“di“simile“ad“un“gioGco.‘eL€È‘0yfatto“usando“l'equiv‘ÿqÐalen˜te“diŽ¡una–U sola“linea“del“bus“cš¸èhe“collega“tutti“i“dispGositivi“PnP“e“il“programma“di“isolamen˜to.Ž¦Nel–Lprimo“giro“di“questo“giošGco“tutti“i“disp˜ositivi“PnP‘LJsono“ascolto“su“questa“linea“e“inš¸èviano“sim˜ultaneamen˜teŽ¡una–¦sequenza“di“bit“nella“linea.‘d.I‘¥®bit“pšGermessi“sono“un“1“(tensione“p˜ositiv‘ÿqÐa)“oppure“uno“0“ap˜ertoŽ¡di–ânessuna“tensione“(circuito“apšGerto“e“tri-state).‘ !Ogni“disp˜ositivš¸èo“PnP‘ášinizia“semplicemen˜te“ad“in˜viareŽ¡sequenzialmenš¸ète–M·su“questa“linea“il“suo“n˜umero“di“serie,›O3bit“a“bit,˜iniziando“con“il“bit“pi€ù“signicativ¸èo.‘oSe“unŽ¡qualsiasi›ÖÉdispGositiv•¸èo,‘ðin“via˜un˜1,‘ðun˜1˜sar€à˜sen“tito˜sulla˜linea˜da˜tutti˜gli˜altri˜disp•Gositivi.‘GcSe˜tutti˜i˜disp“ositiviŽ¡inš¸èviano–Ú4uno“0“apGerto“nella“linea“non“si“sen˜tir€à“nien˜te.‘H‡L'obbiettiv˜o“€è“di“eliminare“(alla“ne“di“questa“primaŽ¡tornata)–™ùtutti“i“dispGositivi“tranne“quello“con“il“nš¸èumero“di“serie“pi€ù“elev‘ÿqÐato.‘@ Eliminato“signica“c˜he“cessaŽ¡restare–pîin“ascolto“all'indirizzo“di“scrittura“al“quale“restano“in“ascolto“tutti“i“dispšGositivi“ancora“in“gio˜co.‘ÄêCi€òŽ¡€è–U detto“ancš¸èhe“dropping“out‘ÿ*¸.‘q€(Si“noti“c˜he“tutti“i“n˜umeri“di“serie“sono“della“stessa“lunghezza.)Ž¦Pš¸èer–Ï™prima“cosa“si“consideri“solo“il“bit“pi€ù“signicativ˜o“del“n˜umero“di“serie“c˜he“viene“pšGosto“p˜er“primo“sullaŽ¡linea–~‰da“tutti“i“dispšGositivi“c¸èhe“non“hanno“ancora“un“handle.‘íºSe“un“qualsiasi“disp˜ositivš¸èo“PnP‘~~in˜via“uno“0“(0Ž¡apGerto)–‹ma“senš¸ète“un“1,‘™,questo“signica“c˜he“qualc˜he“altro“dispGositiv˜o“PnP‘‹‚ha“un“n˜umero“di“serie“pi€ù“alto,‘™,eŽ¡quindi–qFtempšGoraneamen¸ète“si“toglie“dal“gio˜co“e“non“ascolta“pi€ù“ncš¸èh€é“il“giro“non“€è“terminato“(o˜vv˜ero“quandoŽ¡viene–…ßassegnato“un“handle“al“vincitore:‘Òþil“dispGositivš¸èo“con“il“n˜umero“di“serie“pi€ù“alto).‘½Ora“i“dispGositiviŽ¡ancora–Gëin“gioGco“hanno“tutti“il“medesimo“bit“pi€ù“signicativ¸èo“(un“1),›Je“quindi,˜pGer“la“partecipazione“futura“aŽ¡questo–¦giro,‘XpGossiamo“trascurare“questa“cifra“e“considerare“solo“la“parte“restanš¸ète“del“n˜umero“di“serie.‘U­A˜dessoŽ¡si–;ètorni“all'inizio“di“questo“paragrafo“e“lo“si“ripšGeta“nc¸èh€é“p˜er“tutti“i“disp˜ositivi“non“siano“stati“esaminatiŽ¡completamenš¸ète–U i“n˜umeri“di“serie“(si“v˜eda“sotto“pGer“il“caso“di“tutti“0).Ž¦Quindi–$¢€è“cš¸èhiaro“c˜he“il“n˜umero“di“serie“pi€ù“alto“non“v˜err€à“eliminato“dal“gioGco.‘aVMa“cosa“succede“se“le“cifre“pi€ùŽ¡signicativ•¸èe›s(anc“he˜nel˜caso˜dei˜n“umeri˜di˜serie˜ridotti)˜sono˜tutte˜0?‘Ë0In˜questo˜caso˜€è˜stato˜in“viato˜uno˜0Ž¡apšGerto–Á/nella“linea“e“tutti“i“partecipan¸èti“rimangono“in“gio˜co.‘@0Se“tutti“hanno“uno“0“come“cifra“pi€ù“signicativ‘ÿqÐaŽ¡allora–YÛgli“0“sono“trascurati“come“€è“stato“fatto“nel“paragrafo“precedenš¸ète“con“gli“1.‘±Il“gioGco“con˜tin˜ua“in˜viandoŽ¡la–U cifra“successiv‘ÿqÐa“del“n¸èumero“di“serie.ŽŽŽŒ‹Ò¯ Û_2 ý ~?Ÿ„€ÕÁGŽÂ8.‘ñ8AppQÂendice’„x#¹24ŽŽ ÕÁ ýV¯Alla– ne“di“questa“tornata“(dopGo“cš¸èhe“ogni“partecipan˜te“rimasto“ha“in˜viato“il“bit“meno“signicato“del“n˜umeroŽ¤ ®di–¬”serie)“rimane“solo“il“dispGositivš¸èo“PnP‘¬icon“il“n˜umero“di“serie“pi€ù“elev‘ÿqÐato.‘9RA‘¬iquesto“viene“assegnato“un“handleŽ¡ed–w!esce“pšGermanen•¸ètemen“te–w!dal“gio˜co.‘׃Pš¸èoi“tutti“quelli“scartati“preceden˜temen˜te“rien˜trano“in“gioGco“e“inizia“unŽ¡n•¸èuo“v“o–€Ògiro“con“un“partecipanš¸ète“in“meno.‘ô•Alla“ne,‘‹¾viene“assegnato“un“handle“a“ciascun“dispGositiv˜o“PnP‘ÿ*¸.“€ÈŽ¡facile–U vš¸èedere“c˜he“questo“algoritmo“funziona.Ž©ؼUna–‹óv¸èolta“assegnati,‘™§gli“handle“sono“usati“pšGer“indirizzare“ogni“disp˜ositiv¸èo“PnP‘ÿ*¸,“sia“p˜er“p˜otergli“in¸èviare“unaŽ¡congurazione–`Asia“pšGer“leggere“le“informazioni“di“congurazione“dal“disp˜ositivš¸èo“stesso.‘áSi“noti“c˜he“questi“handleŽ¡sono–£vusati“solo“pšGer“la“congurazione“PnP‘£be“non“sono“usati“p˜er“le“normali“com¸èunicazioni“con“il“disp˜ositiv¸èo.Ž¡Quando–a5il“computer“viene“aš¸èvviato,‘d:tutti“gli“handle“sono“stati“pGersi“e“quindi“il“BIOS–a2PnP“solitamen˜te‘a5opGeraŽ¡il–U proGcesso“di“isolamenš¸èto“ogni“qualv˜olta“si“ria˜vvia“il“proprio“PC.Ž¦FINE–U DEL“Plug-and-Pla•¸èy-HO“WTOŽŽŽŒøèûƒ’À;èÛ_2ÕÁGó½HЃ ecti1000ó¥!¢N ecbx1200ó]fŒ ecbx1000ó&Lt$ffffecbx1440óø8‹ ecsi1000óŒ6 ecss1000óqLË ecit1000óþÖëI½q½qecss2074óqLË ectt1000ó 1ê± ecrm1000ó !",š cmsy10ó  b> cmmi10ùî<ßßßßß