Projeler

NOT: Burada kaynak kodlarını verdiğim projeler Hacettepe Üniversitesi Bilgisayar Mühendisliği Bölümündeki eğitimimin ilk 3 senesinde laboratuvar derslerinde öğrencilerden istenen ödevlerden seçilerek konulmuştur. Buradaki programlar günlük kullanımdan ziyade incelemek/öğrenmek gibi amaçlar için uygundur.


Dirsync

Dirsync, Linux üzerinde klasörlerin arasında senkronizasyon sağlamak için C diliyle yazdığım bir programdır. Program, yolu verilen iki klasör arasında farklı dosyaları özyineli (recursive) bir algoritma ile bularak senkronizasyon sağlıyor. Programın kaynak koduna ve programı çalıştırmak için gerekli açıklamaları içeren metin dosyasına aşağıdaki bağlantıdan ulaşabilirsiniz.

http://www.seckintozlu.com/proje/hacettepe/dirsync/dirsync.rar

 

Huffman

Program Huffman algoritmasını kullanarak metinler üzerinde sıkıştırma ve çözme (compress, decompress) işlemleri yapmaktadır. Huffman algoritması hakkında daha fazla bilgiye bu bağlantıdan ulaşabilirsiniz. Linux üzerinde çalışan bu  programın bir kısmı C ile, Huffman alogoritmasının gerçekleştirimini de içeren büyük çoğunluğu ise IA-32 Assembly diliyle yazılmıştır. Programın kaynak koduna ve makefile dosyasına aşağıdaki bağlantıdan erişebilirsiniz.

http://www.seckintozlu.com/proje/hacettepe/huffman/huffman.rar

 

Convex Hull

Bu program girdi olarak verilen koordinatları kullanarak Convex Hull (Dışbükey Örtü) hesaplaması yapmaktadır. Convex Hull hakkında daha fazla bilgiye bu adresten ulaşabilirsiniz. Java ile yazılan bu programda Convex Hull hesaplaması için Brute Force (deneme yanılma), Graham Scan ve Jarvis March algoritmaları kullanılmıştır. Programın kaynak koduna ve çalıştırmak için gerekli açıklamaları içeren metin dosyasına aşağıdaki linkten erişebilirsiniz.

http://www.seckintozlu.com/proje/hacettepe/convex_hull/convexhull.rar

 

Asmcon

Asmcon, Linux üzerinde çalışan ve belirli bir formata uygun C kodlarını IA32-Assembly kodlarına çeviren bir programdır. Programın kendisi de C diliyle yazılmıştır. Programın kaynak koduna ve çalıştırmak için gerekli açıklamaları içeren metin dosyasına aşağıdaki linkten erişebilirsiniz.

http://www.seckintozlu.com/proje/hacettepe/asmcon/asmcon.rar

 

Patricia

C# dili kullanarak yazdığım bu program bilgisayardaki dosya ve klasörlerinizi bir Patricia/Radix ağacında saklayarak indexlemekte ve sonradan hızlıca erişebilmemizi sağlamaktadır. XML’den okuma-yazma işlemlerine de imkan sağlayan programda threadler de sıklıkla kullanılmıştır. Programın çalıştırılabilir .exe haline ve Visual Studio proje dosyalarına aşağıdaki linkten erişebilirsiniz.

http://www.seckintozlu.com/proje/hacettepe/patricia/Patricia.rar

 

MDaemon

Program istemci ve sunucu olmak üzere iki ayrı programdan oluşmaktadır. Linux üzerinde çalışan program Linux’da pipe mekanizması ile ata ve çocuk görevler (process) arasındaki iletişimi ve POSIX kütüphanesi ile thread kullanımını örneklemektedir. Sunucu program girdi dosyalarından okuduğu büyük boyuttaki ve çok sayıdaki matrisleri istemci programlara dağıtmakta, istemci programlar kendilerine gönderilen matrisleri kendi içlerinde threadlere bölerek toplayıp sonucu tekrar sunucu programa iletmektedirler. Sunucu program bütün matrislerin toplamını istemci programlara paralel olarak yaptırarak sonucu hesaplamaktadır. C diliyle yazdığım bu programın kaynak koduna ve çalıştırmak için gerekli açıklamaları içeren metin dosyasına aşağıdaki linkten erişebilirsiniz.

http://www.seckintozlu.com/proje/hacettepe/mdaemon/mdaemon.rar

 

Unix Password Cracker

Unix ve türevi sistemlerde şifreler “crypt” komutu ile şifrelenerek saklanmaktadır. Şifreleme algoritması geri dönüşe imkan vermediği için bu şifreleri kırmak ancak deneme yanılma yoluyla olabilmektedir. Bu programda Linux üzerinde soket programlama yapılarak şifre kırılması işlemi istemci bilgisayarlara paralel olarak yaptırılmaktadır. Dolayısıyla program aslında bir sunucu ve bir istemci programdan oluşmaktadır. Sunucu program kendisine bağlanan istemcileri yöneterek şifre kırma işlemini hızlandırmaktadır. C kodu ile yazılan bu programın kaynak koduna ve çalıştırmak için gerekli açıklamaları içeren metin dosyasına aşağıdaki linkten erişebilirsiniz.

http://www.seckintozlu.com/proje/hacettepe/unixpasswordcracker/passwordcracker.rar

 

Table Manipulator

Table Manipulator Linux üzerinde tablolar ve tablolar içerisindeki kayıtları yönetmek amacıyla yazılmış bir BASH scriptidir.

http://www.seckintozlu.com/proje/hacettepe/table_manipulator/table_manipulator.sh

 

 

 

 

Share

Bir Cevap Yazın