Төхөөрөмжийн драйвэр: Засвар хоорондын ялгаа
Content deleted Content added
No edit summary |
No edit summary |
||
Мөр 1:
Компьютерийн хувьд, төхөөрөмжийн драйвер (ихэвчлэн драйвер гэж ярьдаг) гэдэг нь компьютерт холбогдож байгаа төрөл бүрийн төхөөрөмжийг удирдан ажиллуулдаг [[компьютерийн
Драйвер нь ихэвчлэн техник хангамжинд холбогдсон харилцааны дэд систем эсвэл computer bus -аар дамжин төхөөрөмжтэй харилцдаг.
Програм нь драйверийг ажиллуулах үед драйвер асуудлыг төхөөрөмжид тушаана. Төхөөрөмж өгөгдөлийг буцааж драйверт илгээмэгц драйвер ажиллаж буй програмын жинхэнэ ажиллах зарчимыг шаардана. Драйвер нь хамааралтай техник хангамж болон тодорхой [[үйлдлийн систем]] юм.
==
Төхөөрөмжийн драйверууд нь [[тоног төхөөрөмж]] болон хэрэглээний програмууд, үйлдлийн системүүдийг ажиллахад хооронд нь орчуулагч холбогчийн үүрэг гүйцэтгэн ажилладаг хялбаршуулсан програм юм. Програмистууд эцсийн хэрэглэгчид ашиглахад зориулсан ямар ч техник хангамжийн програмын дээд түвшний код бичиж болно. Жишээ нь: өндөр түвшний програм "өгөгдлийг хүлээн авах", "өгөгдлийг илгээх" хоёр төрлийн үйл ажиллагаатай serial port-той харилцан үйлчлэлцэнэ. Доод түвшинд, төхөөрөмжийн драйвер нь хэрэглэгчийн компьютер дээр суулгасан тухайн serial port хянагчтай харилцах үйл ажиллагааг хэрэгжүүлнэ. 16550 UART-ыг удирдахад шаардсан комманд нь FTDI serial port хөрвүүлэгчийг удирдахад шаардсан коммандаас маш их ялгаатай хэдий software interface-тэй адилхан хийсвэр зүйл юм. ▼
==
==3. Kernel mode vs. user mode==▼
Төхөөрөмжийн драйверийг бичих нь өгөгдсөн platform-ийн үйл ажиллагаанд техник хангамж болон [[програм
Microsoft драйверийг хөгжүүлж буй шинэ framework-р чанаргүй бичигдсэн төхөөрөмжийн драйверүүдийн системийн тогтворгүй байдлыг багасгахыг оролдож байна. Энэ нь Windows Driver Foundation (WDF) гэж нэрлэгддэг ба user mode драйвер шиг төхөөрөмжтэй харилцах message-based protocol –г ашигладаг драйверийн хөгжүүлэлтийг дэмждэг User-Mode Driver Framework (UMDF)-ыг агуулдаг. Хэрвээ драйвер нь malfunction бол тэд системийн тогтворгүй байдлын шалтгаан биш. Kernel-Mode Driver Framework (KMDF) загвар нь kernel-mode төхөөрөмжийн драйверийн хөгжүүлэлтийг зөвшөөөрдөг ба төхөөрөмжийг ажиллуулах, хүчин чадлыг удирдах, I/O үйл ажиллагааг цуцлах, асуудлын шалтгааныг мэдэх зэрэг үйл ажиллагааны хэрэгжилтийн стандартыг хангахыг оролддог. ▼
▲Төхөөрөмжийн драйверууд нь тоног төхөөрөмж болон хэрэглээний програмууд, үйлдлийн системүүдийг ажиллахад хооронд нь орчуулагч холбогчийн үүрэг гүйцэтгэн ажилладаг хялбаршуулсан програм юм. Програмистууд эцсийн хэрэглэгчид ашиглахад зориулсан ямар ч техник хангамжийн програмын дээд түвшний код бичиж болно. Жишээ нь: өндөр түвшний програм "өгөгдлийг хүлээн авах", "өгөгдлийг илгээх" хоёр төрлийн үйл ажиллагаатай serial port-той харилцан үйлчлэлцэнэ. Доод түвшинд, төхөөрөмжийн драйвер нь хэрэглэгчийн компьютер дээр суулгасан тухайн serial port хянагчтай харилцах үйл ажиллагааг хэрэгжүүлнэ. 16550 UART-ыг удирдахад шаардсан комманд нь FTDI serial port хөрвүүлэгчийг удирдахад шаардсан коммандаас маш их ялгаатай хэдий software interface-тэй адилхан хийсвэр зүйл юм.
▲Төхөөрөмжийн драйверийг бичих нь өгөгдсөн platform-ийн үйл ажиллагаанд техник хангамж болон програм хангамжыг хэрхэн ажиллуулах талаар гүнзгий ойлголтыг шаарддаг. Учир нь драйверүүд нь техник хангамжуудыг ажиллуулахын тулд бага түвшиний хандалтыг шаарддаг, маш давуу эрхтэй орчинд ажилладаг ба буруу ажиллах юм бол гэмтэх аюултай. Орчин үеийн үйлдлийн системтэй програмууд нь системийн нөлөөлөлгүйгээр зогсдог. Хэрвээ төхөөрөмж алдаатай програмчлагдсан бол user mode гүйцэтгэж байгаа драйвер нь системийг сүйрүүлж болох юм. Эдгээр зүйлс нь илүү хүнд хэцүү, аюултай асуудлуудыг шийдвэрлэдэг. Драйверуудыг бичих нь програм хангамжийг хөгжүүлж буй компаниудад ажилладаг software engineers, computer engineer-үүдийг багасгаж байна. Учир нь тэд техник хангамжийн загварын талаар мэдээлэл ихтэй байдаг. Түүнээс гадна техник хангамж үйлдвэрлэгчид нь бүтээгдэхүүндээ баталгаа гаргаж өгсөнөөр хэрэглэгчид тэдний техник хангамжуудыг хэрэглэх сонирхол нэмэгдэх юм. physical device driver (PDD)-ыг төхөөрөмж борлуулагчид хэрэглэж байхад logical device driver (LDD)-ыг үйлдэлийн системийн борлуулагчид бичдэг. Гэвч сүүлийн жилүүдэд non-vendors олон тооны төхөөрөмжийн драйвер бичсэн ба голдуу free and open source operating systems хэрэглэж байна. Ийм тохиолдолд техник хангамж үйлдвэрлэгчид төхөөрөмжтэй хэрхэн харьцах талаар мэдээллээр хангаж байх нь чухал юм. Энэ мэдээлэл нь reverse engineering сурахын оронд байж болох ч програм хангамжаас техник хангамжийн хувьд хэцүү юм.
▲Microsoft драйверийг хөгжүүлж буй шинэ framework-р чанаргүй бичигдсэн төхөөрөмжийн драйверүүдийн системийн тогтворгүй байдлыг багасгахыг оролдож байна. Энэ нь Windows Driver Foundation (WDF) гэж нэрлэгддэг ба user mode драйвер шиг төхөөрөмжтэй харилцах message-based protocol –г ашигладаг драйверийн хөгжүүлэлтийг дэмждэг User-Mode Driver Framework (UMDF)-ыг агуулдаг. Хэрвээ драйвер нь malfunction бол тэд системийн тогтворгүй байдлын шалтгаан биш. Kernel-Mode Driver Framework (KMDF) загвар нь kernel-mode төхөөрөмжийн драйверийн хөгжүүлэлтийг зөвшөөөрдөг ба төхөөрөмжийг ажиллуулах, хүчин чадлыг удирдах, I/O үйл ажиллагааг цуцлах, асуудлын шалтгааныг мэдэх зэрэг үйл ажиллагааны хэрэгжилтийн стандартыг хангахыг оролддог.
Apple нь I/O Kit гэж нэрлэгдэх Mac OS X-ын драйверүүдийг хөгжүүлдэг нээлттэй эхийн платформтой.
Linux-ын орчинд програмистууд kernel-н хэсэг шиг, тусдаа ажиллах боломжтой modules эсвэл User-Mode драйвер ( USB төхөөрөмж гэх мэт) шиг төхөөрөмжүүдийн драйверүүдийг зохиодог.
Орчин үеийн Microsoft Windows платформ дээрх төхөөрөмжийн драйверүүд нь kernel-mode (Ring 0 on x86 CPUs) эсвэл user-mode (Ring 3 on x86 CPUs) дээр ажилладаг. user mode дээр ажиллаж буй драйверийн гол давуу тал нь тогтвортой байдлыг сайжруулах юм. муу бичигдсэн user mode төхөөрөмжийн драйвер нь сайн бичигдсэн kernel системийг гэмтээж чадахгүй. Өөрөөр хэлбэл user/kernel-mode нь ихэвчлэн үйл ажиллагааны илүү зардлыг бий болгодог.
==Хэрэглээ==
Орчин үеийн тоног төхөөрөмж болон үйлдлийн системийн олон төрлөөс улбаалан драйвер (удирдаж байгаа программ) нь маш олон өөр өөр төрлийн нөхцөл байдалд үйл ажиллагаагаа явуулж байна.
• Хэвлэгч printers
Line 54 ⟶ 40:
o Зарим үед хэлийг бүр өндөр түвшинд хэрэгжүүлэх (жишээ нь: PostScript)
Тиймээс өгөдсөн тоног төхөөрөмжийн хувьд зөв төхөөрөмжийн драйверуудыг сонгон суулгах нь ихэвчлэн компьютерын системийн тохиргооны гол бүрэлдэхүүн хэсэг болдог. [citation needed]
==Виртуал төхөөрөмжийн драйверууд
Виртуал төхөөрөмжийн драйверууд нь төхөөрөмжүүдийн драйверуудын тодорхой нэг хувилбарыг төлөөлдөг. Тэдгээр нь багаж төхөөрөмжийн хэрэгсэлтэй өрсөлддөг байсан, ялангуяа виртуалчлагдсан virtualization орчинд , жишээ нь DOS програм нь Microsoft Windows компьютер эсвэл зочин үйлдлийн систем operating system дээр ажиллаж байх үед, жишээ нь Xen хост. Зочин үйлдлийн системд эрх олгохын оронд тоног төхөөрөмжтэй харилцах, виртуал төхөөрөмжийн virtual machine драйверууд нь эсрэг үүрэг авч, тоног төхөөрөмжийн хэсэг нь даган дуурайж, ингэснээр виртуал машин дотор ажиллаж байгаа зочин үйлдлийн систем болон түүний драйверууд нь бодит тоног төхөөрөмж хандах хуурамч үзэгдэл байж болох юм. Хэрэглэгчийн O.S-ээс төхөөрөмжрүү нэвтрэх оролдлого нь гол O.S-ийн виртуал хадгаламжийн системд холбогдсон байдаг, жишээ нь function calls гэх мэт. Виртуал төхөөрөмжийн драйвер нь виртуал машин руугаа interrupts зэрэг зохиомол процессор-түвшний хэмнэл илгээж болно.
Виртуал төхөөрөмжүүд нь виртуал- бус орчинд үйл ажиллагаа явуулдаг байж болно. Жишээ нь виртуал дискний disk төхөөрөмж iSCSI. ашиглаж байхад виртуал network adapter нь virtual private network ашиглаж байна. Виртуал нь төхөөрөмжүүдийн драйверуудын хувьд сайн жишээ гэвэл Daemon Tools.байж болно. Виртуал төхөөрөмжийн драйверууд нь VxDs, VLMs, VDDs зэрэг хэд хэдэн төрөл байдаг.
==Нээлттэй драйверууд==
Түгээмэл хэрэглэгддэг төхөөрөмжүүдийн драйверын Solaris тодорхойлолт
==APIs==
==Танигч==
[[PCI]] болон USB дээрх тоног төхөөрөмжүүд нь тус бүр [[4 ширхэг арван зургаан
==Ашигласан материал==
:* 1. "What is a device driver?, The purpose of device drivers". PC Gesund. RetrievedNovember 8, 2012.
:* 2. Jump up^ EMC Education Services (2010). Information Storage and Management: Storing, Managing, and Protecting Digital Information. John Wiley & Sons.
:* 3. Jump up^ Burke, Timothy (1995). Writing device drivers: tutorial and reference. Digital Press.
:* 4. Jump up^ "MAKEDEV — Linux Command — Unix Command". Linux.about.com. 2009-09-11. Retrieved 2009-09-17.
:* 5. Jump up^ "User-mode vs. Kernel-mode Drivers". Microsoft. 2003-03-01. Retrieved 2008-03-04.
:* 6. Jump up^ "Introduction to the User-Mode Driver Framework (UMDF)". Microsoft. 2006-10-10. Retrieved 2008-03-04.
:* 7. Jump up^ Deborah Morley (2009). Understanding Computers 2009: Today and Tomorrow. Cengage Learning.
:* 8. Jump up^ "CCISS". SourceForge. 2010. Retrieved 2010-08-11. Drivers for the HP (previously Compaq) Smart Array controllers which provide hardware RAID capability.
:* 9. Jump up^ Russell, Steve; et al. (2003-10-21). "Abbreviations and acronyms". Server Consolidation with the IBM eserver xSeries 440 and VMware ESX Serve. IBM International Technical Support Organization. p. 207. ISBN 0-7384-2684-9. Retrieved2011-08-14.
:* 10. Jump up^ "US Patent 5969841 - Gigabaud link module with received power detect signal". PatentStorm LLC. Retrieved 2009-09-08. An improved Gigabaud Link Module (GLM) is provided for performing bi-directional data transfers between a host device and a serial transfer medium.
|