Bu repo'da uygulama derslerine ait materyallere (ders notlari, odev bilgileri, proje bilgileri, duyurular vb.) ulasabilirsiniz.
Proje 0 (Ekstra Proje) ilan edilmistir.
Ars. Gor. Güvenç Usanmaz
Oda: B207
Bolum: Bilgisayar Muhendisligi
Email: gusanmaz <att< nku nokta edu nokta tr
- Operating Systems: Three Easy Pieces Teorik Kaynak
- Advanced Linux Programming Pratik Kaynak
- Operating Systems: Crash Course Computer Science #18 ~10 dakikada isletim sistemleri
- Turkce Linux Dersleri
- Belgeler.org (Muhtemelen Guncel Degil)
- Prof. Kemal Bıçakçı İşletim Sistemleri Ders Videoları - Ilgili videolarda kaynak kitap olarak Operating Systems: Three Easy Pieces kullanilmaktadir.
- Linux Tutorial
- Linux/Mac Tutorials - Corey Schafer
- Bash Scripting
- UNIX: Making Computers Easier To Use -- AT&T Archives film from 1982, Bell Laboratories
-
C dilinde kendini eksik goren ogrencilerimizin https://exercism.org/tracks/c sayfasindaki alistirmalari kodlamalari ve dogru kodladiklari alistirmalari baskalarinin nasil kodladigini incelemeleri tavsiye edilir.
- Distrowatch
- Ubuntu
- KDE Neon
- Pop!_OS
- OpenSuse
- Manjora
- Dual-boot
- Single-boot
- Sanal makine (Virtual Box, WMvare)
- Windows Subsystem for Linux (WSL)
- Virtual Private Server (VPS)
- B205 (?)
- Cygwin (?)
- Repl.it
https://github.com/Mona-Roza/Notes/tree/main/About%20Server%20%26%20About%20Linux
- Onemli Verilerin Yedeklenmesi
- BIOS Boot Oncelikleri
- Disk Bicimlendirme (Gparted vb.)
- Once Windows, sonra Linux Kurulumu (?)
- USB ISO Creator (Etcher, UnetBootin)
- Legacy boot vs. UEFI
- Secure boot
- Github hesabi acmak
- Bilgisayara Linux dagitimi kurmak
- Github Discussion sayfasinda aktif olmak
- Bu sayfayi duzenli araliklarla kontrol etmek
- Bu sayfada ilan edilecek proje ve odevlerde istenilenleri yapmak
- Universite email hesabinizi duzenli araliklarla kontrol etmek.
-
Tablolarda her satirda odev gonderen bir ogrencinin o projedeki testlerdeki basari durumu gorulebilir.
-
REPO URL'sinden o ogrencinin proje icin gonderdigi
main.c
dosyasina ve uygulanan testlerle ilgili detayli bilgiler iceren json dosyasina erisilebilmektedir. -
Kodlari test etmek icin kullanilan programin kodlarina https://github.com/gusanmaz/gracode baglantisindan erisebilirsiniz.
-
Test dosyalari
commands.sh
isimli Bash scripti dosyalarina yazilmistir. -
gracode.json
isimli dosyada testlerin puan bilgisi, her test icin ogrencinin kodunun, referans kod ile karsilastirmasi icin hangi Python fonksiyonunun kullanilacagi gibi bilgiler yer almaktadir. -
Referans kod ile ogrenci kodunun ciktilarinin (stdout ve stderr) karsilastirilmasi icin kullanilan Python fonksiyonlarini funcs.py dosyasindan erisebilirsiniz.
- Her odev icin
perf
komutu ile performans analizi yapilmistir. Bu komutun kodunuz icin urettigi ciktiya ilgili json dosyasindan erisebilirsiniz. - Kodlarin notlandirilmasinda kodlarin performansi kriter olarak kullanilmamistir.
- Bununla birlikte her testin belli bir surede tamamlanmasi beklenmektedir. Her test icin ayri belirlenen bu sureleri
commands.sh
dosyalarini inceleyerek gorebilirsiniz. Eger JSON dosyasinda bir test icintimeout
degeriTrue
gozukuyorsa ilgili kodun testte verilen maksimum sure icinde calismasini bitiremedigi anlasilmalidir.
- Mouse imlecini tablolarin basligindaki testlerin uzerine getirerek referans kodun o test icin urettigi ciktiyi (stdout, stderr) gorebilirsiniz.
- Ayni sekilde belirli bir sekilde ogrenci icin mouse imlecini testlerin uzerine getirerek ilgili kodun o test icin urettigi ciktiyi (stdout, stderr) gorebilirsiniz.
stdout
vestderr
ciktilarinin cok uzun olmasi durumunda bu ciktilari tablo uzerinde goremeyebilirsiniz. Bu durumda ilgili ciktilara ilgili JSON dosyasindan erisebilirsiniz.- Tablolarda sadece kurallara uygun gonderim yapan ogrencilerin isimleri gozukmektedir.
- Tablolardaki satirlar ogrenci numarasina gore siralidir.
- Tablolardaki son test aslinda bir test degildir! Ilk proje disindaki projelerde son testte
perf
komutu calistirilmaktadir. Tablodaki butun ogrenciler icin bu test basarili gozukmektedir. Bu test basarili olmanin projeden alinan toplam puana katkisi 0'dir.
https://github.com/gusanmaz/BMB311_OS/blob/main/docs/codes/masked/
altindaki bir json dosyasini incelemek istiyorsaniz bu dosyayi once bilgisayariniza indirmeniz veya JSON verisinin tamamini bilgisayarinizda bir metin editorune kopyalayip, json uzantisiyla kaydetmeniz tavsiye edilir.- Daha sonra bilgisayarindaki bu JSON dosyasini bir JSON Goruntuleyici program yardimiyla daha rahat goruntuleyebilirsiniz.
- Pek cok ucretsiz JSON Goruntuleyici (JSON Viewer) program bulunmaktadir.
- JSON dosyalarinin goruntulemek icin
Mozilla Firefox
internet tarayicisini da kullanabilirsiniz.
- Olusturulan repoya ogrenci_no.txt isimli dosya eklememek
- Olusturulan repodaki kodlari main.c isimli dosya haricinde bir dosyaya yazmak.
- Proje aciklamalarinda argumanlarin komut satirindan alinacagi belirtilmesine ragmen
scanf
gibi fonksiyonlarla kullanicidan input almaya calismak - Her bir proje icin ayri bir repo davet linki verilmesine ragmen butun proje kodlarini tek bir repoya yuklemek
- Gonderilen kodun derlenmemesi
- proje 100
- proje 130
- proje 145
- proje 120
puan uzerinden degerlendirilmistir.
- proje https://github.com/gusanmaz/BMB311_OS/tree/main/proje3-test-dosyalari baglantisindaki metin dosyalari kullanilarak test edilmistir.
- Otomatik degerlendirme programi Fedora Linux 37 uzerinde gcc 12.2.1 kullanilarak calistirilmistir.