от Никола Антонов(28-05-2002)

рейтинг (14)   [ добре ]  [ зле ]

Printer Friendly Вариант за отпечатване

Компилация на Linux-ядрото, част III: Parallel port, IDE...

    Parallel port support

Нищо сложно. Компилирайте като модули поддръжката на паралелния порт, PC-style hardware и Use FIFO/DMA if available. Ако непременно държите, можете да го включите и направо в ядрото. Аз например установих, че старият ми принтер печата много по-бързо, когато lp (модулът за самия принтер), parport и parport_pc са вградени в ядрото. Последната функция ще ускори трансфера между компютъра и устройствата, закачени за парарелния порт, използувайки известния алгоритъм FIFO и включвайки директния достъп до паметта, ако сте го позволили в BIOS.

    Plug and play configuration [y]

Непременно ви трябва, включете го в ядрото.

    Block devices [y]

    Normal PC floppy disk support [y/m]

Досещате се за какво се отнася. Ще ви трябва, ако имате флопи-дисково устройство. А кой няма?

Останалите функции, ако щете ми вярвайте, може и да не ви потрябват, освен ако не са ви нужни за поддръжката на конкретно устройство или на античните 8-битови твърди дискове :)

Някои от параметрите в този раздел обаче са важни и ще им обърнем подобаващо внимание.

    RAM disk support [m/n]

Използува се, когато компилирате ядро, предназначено да работи на една дискета. Заделя се известно количество RAM (посочвате го ръчно, обикновено е 4096K), която се използува като виртуално дисково устройство. Ако ядрото е предназначено да се зарежда от харддиск и да работи на стандартен компютър, не ви трябва RAM disk support.

    Loop device support [m/n]

Параметър, който ще ви трябва, ако искате да използувате един файл, който да се третира като блоково устройство. Колкото и странно да звучи, за Linux всяко хардуерно устройство е просто файл. Възможно е например да създавате флопи-имиджи, преди да сте ги записали върху физическа дискета. Този параметър, както и scsi-емулацията, за която ще говорим по-нататък, ще са ви необходими и в случай, че записвате CD-та и искате да проверите състоянието на ISO 9660 файловата система, преди да я запишете върху физическия носител.

    Network Block Device support [m/n]

Този параметър позволява на компютъра да работи като клиент към мрежово блоково устройство. С една дума, представете си, че една и съща машина работи едновременно като сървър и клиент посредством loopback блоково устройство.

    ATA/IDE/MFM/RLL support

Също много важен раздел. Ако знаете как да настроите IDE-устройствата си, ще можете да се радвате на сериозно подобрение на дисковата производителност, което влияе на цялата система доста благоприятно. Непременно разрешете този параметър и разгледайте неговия подрзадел.

    Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support [y]

Наименованието на този подраздел говори повече от ясно за какво се отнася. От него зависи дали чипсетът ви ще поддържа различни стандарти на комуникация с дисковите устройства. Тъй като опциите са много, ще се спрем само на най-важните от тях.

    Include IDE/ATA-2 DISK support [y]

Ако дискът ви не е много стар и разбира се е IDE, а не SCSI, добре ще е да включите този параметър. Отнася се до чипсети, които поддържат стандартите ATA-2 и нагоре.

    Use multi-mode by default (y)

Едно важно допълнение към горната опция. Включете го по принцип и най-вече ако често пъти при по-големи трансфери виждате следната грешка:

“DriveReady SeekComplete Error”

    Include IDE/ATAPI CDROM support [y]

    SCSI emulation support [y/m/n]

Как ще отговорите тук, зависи изцяло от вашите конкретни нужди. Ако искате да използувате вашия Linux като платформа за пържене на дискове, ще трябва да отговорите с [y], но да изключите Include IDE/ATAPI CDROM support. Така вашите cdrom-устройства ще използуват scsi-емулация, необходима на повечето програми за прогаряне на дискове. Вместо да ги откривате като /dev/hdd и т.н., ще ги намерите като /dev/scd0 и т.н. Т.е. те ще се възприемат от операционната система като scsi-устройства. Важно! За да включите тази опция, ще трябва да отговорите с [y] и на SCSI generic support в раздела SCSI support.

Следващите опции се отнасят до поддръжката на конкретни чипсети. Ако разпознаете някъде там чипсета на вашия компютър, включете каквото има за него. Аз, например, съм със стария класически Intel 440 BX/ZX чипсет и съм отговорил с [y] само на Intel PIIXn chipsets support, както и на PIIXn tuning supprt. Но освен за конкретни нужди, тук има и опции, които са важни за всеки.

    Generic PCI IDE chipset support [y]

Най-вероятно вашият чипсет е базиран на PCI шина и включването на тази опция е просто задължително.

    Generic PCI bus-master DMA support [y]

Също е желателно да го имате. Използуването на DMA (direct memory access) подобрява чувствително работата на дисковите устройства, стига те да го поддържат. По този начин се освобождава централният процесор от натоварването с транфера от твърдия диск към паметта, тъй като дискът получава директен достъп до нея.

    Use PCI DMA by default when available [y]

    ATA Work(s) In Progress /EXPERIMENTAL/ [n]

Все още в експериментален етап. Ако го включите, можете да опитате функции, които все още се разработват. Ако държите на стабилността и не желаете да рискувате, засега го изключете.

    Good-Bad DMA Model-Firmware [n]

Параметър, който не е задължителен и дори се препоръчва да не го включвате. Съществуват “бъгави” фърмуери (малкото парче софтуер, което управлява чипсета на най-ниско ниво) и вашето ядро ще провери дали нямате проблем с поддръжката на DMA, т.е. дали има бъг във фърмуера, който твърди, че дискът поддържа DMA, но всъщност това не отговаря на истината. Интересна опцийка :)



<< Компилация на Linux-ядрото, част IV: Networking options | Компилация на Linux-ядрото, част II: Първите стъпки >>