Pertanyaan yang diberi tag «dynamic-linking»

Dalam komputasi, penghubung dinamis adalah proses sistem operasi (OS) yang memuat (salinan dari penyimpanan persisten ke RAM) dan tautan (mengisi tabel lompatan dan memindahkan pointer) perpustakaan bersama yang dibutuhkan oleh yang dapat dieksekusi pada saat dijalankan, yaitu, ketika dieksekusi.

1
Linux, GNU GCC, ld, skrip versi dan format biner ELF - Bagaimana cara kerjanya?
Saya mencoba mempelajari lebih lanjut tentang versi perpustakaan di Linux dan bagaimana menjalankannya. Inilah konteksnya: - Saya punya dua versi perpustakaan dinamis yang mengekspos set antarmuka yang sama, katakan libsome1.sodan libsome2.so. - Aplikasi terhubung dengan libsome1.so. - Aplikasi ini digunakan libdl.sountuk memuat modul lain secara dinamis, katakanlah libmagic.so. - Sekarang …

2
Bagaimana tautan dinamis / loader itu sendiri secara dinamis ditautkan seperti yang dilaporkan oleh `file`?
Pertimbangkan dependensi objek yang dibagikan /bin/bash, yang termasuk /lib64/ld-linux-x86-64.so.2(dynamic linker / loader): ldd /bin/bash linux-vdso.so.1 (0x00007fffd0887000) libtinfo.so.6 => /lib/x86_64-linux-gnu/libtinfo.so.6 (0x00007f57a04e3000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f57a04de000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f57a031d000) /lib64/ld-linux-x86-64.so.2 (0x00007f57a0652000) Memeriksa /lib64/ld-linux-x86-64.so.2menunjukkan bahwa itu adalah symlink ke /lib/x86_64-linux-gnu/ld-2.28.so: ls -la /lib64/ld-linux-x86-64.so.2 lrwxrwxrwx 1 root root 32 May 1 19:24 /lib64/ld-linux-x86-64.so.2 …

1
Apa urutan pencarian tautan dinamis Linux?
Ini bukan duplikat karena ini berurusan dengan kekhasan yang saya perhatikan ketika saya gunakan /etc/ld.so.conf. Untuk mendapatkan jalur yang dicari oleh tautan dinamis untuk pustaka, saya menjalankan perintah ldconfig -v | grep -v "^"$'\t' | sed "s/:$//g". Ketika /etc/ld.so.conftidak memiliki jalur yang terdaftar di dalamnya. Output dari perintah sebelumnya adalah …

2
Tidak dapat menjalankan biner di NixOS - Tidak ada file atau direktori tersebut
Saya mencoba untuk menginstal oracle jre saat ini pada VM yang menjalankan NixOS. Sekarang yang berikut ini terjadi: [michas@cc:~]$ tar xvzf jre-7u40-linux-x64.tar.gz |grep bin/java jre1.7.0_40/bin/javaws jre1.7.0_40/bin/java_vm jre1.7.0_40/bin/java [michas@cc:~]$ ls -l ./jre1.7.0_40/bin/java -rwxr-xr-x 1 michas nogroup 7750 Aug 27 09:17 ./jre1.7.0_40/bin/java [michas@cc:~]$ ./jre1.7.0_40/bin/java bash: ./jre1.7.0_40/bin/java: No such file or directory WTF? …

2
ELF berbagi perpustakaan - motivasi untuk PLT
Bisakah kode modifikasi diri digunakan untuk mempercepat pemanggilan fungsi di pustaka yang terhubung secara dinamis? Sejauh yang saya pahami, pustaka bersama ELF menggunakan semacam tabel lompat tidak langsung (tabel tautan prosedur, atau PLT) untuk mengaktifkan fungsi perpustakaan yang mengikat secara malas. Tujuannya tampaknya untuk menghindari keharusan memodifikasi tabel di segmen …





2
Mengidentifikasi program yang sedang berjalan yang menggunakan versi lama perpustakaan yang baru saja saya ganti
Setelah menginstal pembaruan ke alamat CVE-2014-0160 ( bug OpenSSL Heartbleed ), saya harus berhati-hati untuk memulai kembali apa pun yang mungkin menggunakan libssl - banyak layanan, seperti Apache dan perangkat lunak VPN saya, masih memiliki libssl rentan yang lama dimuat dan manajer paket saya tidak berupaya untuk memperbaiki ini. Ini …


1
Pengaruh tautan statis dan dinamis pada alamat mulai
Saya punya program C sederhana. Saya berlari: $ gcc Q1.c -Wall -save-temps -o Q1 Kemudian saya memeriksa executable yang dihasilkan: $ objdump -f Q1 Q1: file format elf32-i386 architecture: i386, flags 0x00000112: EXEC_P, HAS_SYMS, D_PAGED start address 0x080483b0 Lalu saya kompilasi dengan tautan statis: $ gcc Q1.c -Wall -save-temps -static …

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.