25 Mayıs 2013 Cumartesi

Ödev 2


1) İşletim sistemleri aynı olduğu için sistem çağrıları aynıdır. Eğer xeyes'ın dosya bağımlılıkları varsa sunucudan ev bilgisayarına kopyalandığı zaman çalışmayacaktır. Bağımlı dosyaların da kurulması gerekmektedir.

2) Videoyu tam ekran yaparak daha kolay izleyebilirsiniz.

Unable to display content. Adobe Flash is required.


3) Resmi üzerine tıklayarak büyütebilirsiniz.





Öncelikle ekrana "Hello, world!" basan C kodunu gedit'te yazdım ve bu dosyayı "hello.c" olarak kaydettim. Sonrasında "gcc -Wall hello.c -o hello" komutuyla bu kodu "hello" adındaki çalıştırılabilir dosyaya dönüştürdüm. Burdaki "-Wall" compiler'ın uyarılarını açmaktadır, böylece bir sorun oluştuğunda bize bildirilebilir. "-o"yu kullanarak da "hello.c"yi "hello" isminde bir çalıştırılabilir dosyaya dönüştürdüm. Şimdi strace çıktılarını inceleyelim:

strace -ttT ./hello   - gcc ile yarattığım "hello" programını strace ile tarattım. Buradaki "tt" eki her bir adımın zaman damgasını mikrosaniyesine kadar ekrana basmakta, "T" eki de her sistem çağrısının ne kadar zaman harcadığını satır sonunda ekrana basmaktadır.

execve   - Program çalıştırılır ve çalıştırılan programın adı ekrana yazılır.

brk   - Programın çalışacağı data segment'in sonunu gösterir. Eğer 0 değerini döndürürse program için bellekte yeterli yer ayrılmış demektir.

mmap   - Programın belirlenen miktardaki byte'ını belleğe yükler.

access   - Bir dosyanın erişime açık olup olmadığını belirler.

open   - Sanal bir terminal'da bir program başlatır.

fstat   - Dosya hakkında bilgi verir.

close   - Bir file descriptor'ı kapatır. Böylece o tanımlayıcı başka bir yerde kullanılabilir.

read   - Buffer'ın içine belirlenmiş büyüklükteki byte'ı file descriptor'dan okur.

mprotect   - Belleğin belli bir bölümünün koruma ayarını değiştirir.

arch_prctl   - Mimariye özgü thread durumlarını ayarlar.

munmap   - Bellekten dosyaları veya aygıtları çıkartır.

write   - Buffer'dan alınan belirli miktardaki byte'ı bir file descriptor'a yazar.

exit_group   - Bir işlemdeki bütün thread'leri durdurur.

Hiç yorum yok:

Yorum Gönder