3-Мavzu. Linux biblioteka va utilitalari reja
Download 30.47 Kb.
|
Ma\'ruza-3
- Bu sahifa navigatsiya:
- Fedora 12 64-bit [ian@echidna ]$ ldd /sbin/sln /sbin/ldconfig /bin/ln
- Fedora 8 32-bit
Listing 1.
[ian@echidna ~]$ ls -l /sbin/sln /bin/ln -rwxr-xr-x. 1 root root 47384 2010-01-12 09:35 /bin/ln -rwxr-xr-x. 1 root root 603680 2010-01-04 09:07 /sbin/sln Zaruriy kutubxonalar. Hozirgi kunda kompyuterlarda 32- va 64-razryadli Linux tizimlari ishlatilmoqda. Shuning uchun ko‘pchilik kutubxonalar 32- va 64-razryadli versiyalarda yig‘ilmoqda. 64-razryadli versiyalar odatda /lib64 jildida, 32-raszryadlilari esa an’anaviy /lib jildida saqlanadi. Standart 64-razryadli Linux tizimlarida libc kutubxonasining ikkita versiyasini uchratish mumkin: /lib/libc-2.11beta, p, pre.1.so va /lib64/libc-2.11.1.so. Bu ikki kutubxonalar 64-razryadli Linux tizimlarida S da yozilgan 32- va 64-razryadli dasturlarning bajarilishini ta’minlaydi. Debian yoki Ubuntu distributivlarida ishlayotganda statik yoki dinamik tuzilmalarning farqlash imkonini berish uchun ldd buyrug‘idan foydalaniladi, chunki ularda sln buyrug‘i mavjud emas, budan tashqari, /sbin/ldconfig faylilining mavjudligini ham tekshirish kerak bo‘ladi. Quyida ln, sln va ldconfig hamda /bin/ln fayllari uchun ldd buyrug‘idan 64-razryadi Fedora 12 OT(echidna) va 32-razryadli Fedora 8 (pinguino) OTlarda foydalanish natijasi keltirilgan Listing 2. sln va ln lar uchun ldd buyrug‘i natijasi [ian@echidna ~]$ #Fedora 12 64-bit [ian@echidna ~]$ ldd /sbin/sln /sbin/ldconfig /bin/ln /sbin/sln: not a dynamic executable /sbin/ldconfig: not a dynamic executable /bin/ln: linux-vdso.so.1 => (0x00007fff644af000) libc.so.6 => /lib64/libc.so.6 (0x00000037eb800000) /lib64/ld-linux-x86-64.so.2 (0x00000037eb400000) [ian@pinguino’~]$ # Fedora 8 32-bit [ian@pinguino’~]$ ldd /bin/ln linux-gate.so.1 => (0x00110000) libc.so.6 => /lib/libc.so.6 (0x00a57000) /lib/ld-linux.so.2 (0x00a38000) Bunda ldd dasturi "not a dynamic executable" xabari orqali dinamik tuzilmani tekshiradi, sln va ldconfig dasturlar statik yig‘ilganligini aytadi. Yana ln buyrug‘ida uchta umumiy bibliotekalar (linux-vdso.so.1, libc.so.6 va /lib64/ld-linux-x86-64.so.2) zarur deb hisoblaydi. E’tiborlisi, .so kengaytmasi shared objects (birgalikda ishlatiladigan ob’ekt), ya’ni kutubxona dinamik ekanligini anglatadi. 3-Listingda 64-razryadi Fedora 12 OT bajarilgan uchta turli bloklarni axborotlari bilan ko‘rish mumkin: linux-vdso.so.1 o‘zida virtual ajraluvchi ob’ektni taqdim etadi (Virtual Dynamic Shared Object, VDSO). Fedora 8 OT ro‘yxatida linux-gate.so.1 kutubxonasi ham mavjud.. libc.so.6 /lib64/libc.so.6 ga ko‘rsatkich mavjud. /lib64/ld-linux-x86-64.so.2 Boshqa kutubxonaga yagona yo‘l borligini bildirmoqda. Listing 3. Kutubxonalarda simvolli havolalar: ls –l buyrug‘i. [ian@echidna ~]$ ls -l /lib64/libc.so.6 /lib64/ld-linux-x86-64.so.2 lrwxrwxrwx. 1 root root 12 2010-01-14 14:24 /lib64/ld-linux-x86-64.so.2 -> ld-2.11.1.so lrwxrwxrwx. 1 root root 14 2010-01-14 14:24 /lib64/libc.so.6 -> libc-2.11.1.so Download 30.47 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling