işletim sistemi linux ve mimari x86..
load-time esnasında shared libraryler üzerinde nelerin döndüğünden daha önceki yazılarımızda
bahsetmiştik.
yalnız önceki yazılarda bahsetmiş olmamıza rağmen yine de burada tekrarlayalım.
programımızın başlamadan önce çalıştırılmaya hazırlanması için
arkada bir takım senaryolar döner ve bu senaryolardan biriside load-time relocationdır.
load-time da 10 relocation yapmak oldu bitti ile olmaz,belirli bir zaman harcanarak bu
iş halletilir.evet 10 relocation pek fazla süre almıyacaktır fakat büyük uygulamalarda
relocation sayısı 10 olmayacaktır..
bunu hatırlattıkdan sonra programımızda başlangıc süresini en iyileme için işin erbabları
bir takım yöntemleri shared librarylerde uygulamaya koydular.
25 Ağustos 2016 Perşembe
18 Ağustos 2016 Perşembe
LOAD-TIME RELOCATION
LOAD-TIME RELOCATION
bu yazımızda shared object fileların LOAD-TIME da nasıl relocation işlemlerinin dynamic linker tarafından yapıldığından elimizden geldiğince bahseticez..
işletim sistemi program header table içerisinde INTERP segmentini görürse LOAD segmentlerini yükledikten sonra INTERP segmentinde belirtilen dynamic linkerın kendisinide programın address spacenin içerisine yerleştiriyor.
programın adress spacenin kendisini ---> cat /proc/proses_id/maps
ya da şu şekilde -----> pmap proses_id
görebilirsiniz..
bu yazımızda shared object fileların LOAD-TIME da nasıl relocation işlemlerinin dynamic linker tarafından yapıldığından elimizden geldiğince bahseticez..
işletim sistemi program header table içerisinde INTERP segmentini görürse LOAD segmentlerini yükledikten sonra INTERP segmentinde belirtilen dynamic linkerın kendisinide programın address spacenin içerisine yerleştiriyor.
programın adress spacenin kendisini ---> cat /proc/proses_id/maps
ya da şu şekilde -----> pmap proses_id
görebilirsiniz..
17 Ağustos 2016 Çarşamba
ELF { eXecutable and Linkable Format }
ELF-eXecutable and Linkable format.
ELF,icra edilebilir ve bağlanabilir format olarak türkçeleştirilebilir.peki nedir tam olarak ELF bu yazıda kısaca ELF hakkında konuşucaz.
ELF executable(çalıştırılabilir),relocatable file,shared libraries için ortak bir formattır.ELF oldukça geniş analiz edilebilir fakat biz burada basit analiz yaparak(bilgimiz dahilinde) en azından bir ELF executable dosya içinde neler dönüyor bunları anlamaya çalışıcaz.
ELF,icra edilebilir ve bağlanabilir format olarak türkçeleştirilebilir.peki nedir tam olarak ELF bu yazıda kısaca ELF hakkında konuşucaz.
ELF executable(çalıştırılabilir),relocatable file,shared libraries için ortak bir formattır.ELF oldukça geniş analiz edilebilir fakat biz burada basit analiz yaparak(bilgimiz dahilinde) en azından bir ELF executable dosya içinde neler dönüyor bunları anlamaya çalışıcaz.
10 Ağustos 2016 Çarşamba
eXecutable formuna dönüş
işletim sistemi linux,compilerımız gnu compiler.
bu aşamaları örnek üzerinden açıklayalım.
print.c adında bir dosyamız olsun ve bunu içeriği şu şekilde olsun :
#include <stdio.h>
#define name "kernsteinist"
#define number 10
bu aşamaları örnek üzerinden açıklayalım.
print.c adında bir dosyamız olsun ve bunu içeriği şu şekilde olsun :
#include <stdio.h>
#define name "kernsteinist"
#define number 10
void main(void)
{
int j;
for(j=0;j<number;j++) // for girişi
printf("Hello " name "\n"); /* print baskısı */
}
Kaydol:
Kayıtlar (Atom)