İŞLETİM SİSTEMLERİ ISE 206 DR. TUĞRUL TAŞCI
Dersin Amacı Bilgisayar sistemlerinin temel organizasyonunu tanımak İşletim sistemlerinin ana bileşenlerini öğrenmek Çeşitli bilgisayar sistemlerini genel özellikleriyle öğrenmek Yaygın olarak kullanılan işletim sistemlerini tanımak
Bilgisayar Sistemi Bileşenleri Donanım Temel sistem kaynakları. İşlemci, bellek, giriş/çıkış aygıtları İşletim Sistemi Kullanıcıların uygulama programları aracılığıyla bilgisayar donanımı ile etkileşiminin kontrolünü ve koordinasyonunu sağlayan sistem programı. Uygulama Programları Sistem kaynaklarının belli problemleri çözmek üzere kullanımını sağlayan yazılımlar. Kelime işlemciler, derleyiciler, web tarayıcılar, veritabanı programları, oyunlar. Kullanıcılar İnsanlar ya da diğer bilgisayarlar.
Bilgisayarın Açılış Süreci Güç düğmesine basılır. Anakart, İşlemci, Bellek, Disk ve portlara güç ulaşır. BIOS programı çalışır. BIOS İşletim sistemi olup olmadığını kontrol eder. İşletim sistemi Kernel’i belleğe yüklenir. Kernel, diğer gerekli sistem programlarını belleğe yükler İşletim sistemi ara-yüzü erişilebilir hale gelir. BIOS – CMOS’daki konfigürasyonu okur ve Sistemdeki tüm donanımları kontrol eder. BIOS aygıt sürücülerini belleğe yükler
Bilgisayar Programı Derleme Süreci Source Code (Kaynak Kod) Compiler (Derleyici) Object Code (Nesne Kodu) Linker (Bağlayıcı) Machine Code (Makine Kodu) İşletim Sistemiİşlemci Program Çıktısı Pre-Processor (Ön İşlemci) AssemblyAssembler Kodu Libraries (Kütüphaneler)
Program Kodu Örnekleri Kaynak KodAssembly KoduNesne KoduMakine Kodu
Bilgisayar Sistemi Depolama İşlemleri Bilgisayar sistemlerinin temel depolama birimi bit olarak adlandırılır. Bir bit yalnızca 0 ya da 1 değerini alabilir. Diğer tüm depolama birimleri bit dizilerinden oluşur. Yeterli sayıdaki bit ile bir bilgisayar sistemi rakam, harf, resim, ses, video, belge ve program kodlarını gösterebilir. Depolama için kullanılan az bilinen diğer bir kavram word kavramıdır. Word bilgisayar mimarisinin temel veri tipidir. Örneğin 64-bit bir bilgisayar, 64 bit’lik bellek adresleyebilen register’ lara sahip bir bilgisayar demektir. 1 byte 8 bit 1 kilobyte (KB) 1024 byte 1 megabyte ( MB) byte 1 gigabyte ( GB) byte 1 terabyte (TB) byte 1 petabyte (PB) byte
Depolama Aygıtları Manyetik Disk < 10 TB ns 20 – 150 MB/s Katı Hal (Solid State) Diski < 1 TB – ns 500 MB/s Ana Bellek (RAM) < 64 GB 80 – 250 ns 1000 – 5000 MB/s Tampon Bellek (Cache) < 16 MB 0.5 – 25 ns 5000 – MB/s Register < 1 KB 0.25 – 0.5 ns – MB/s
İşlemci – Bellek Çalışma Prensipleri
İşlemci – Bellek – Aygıt Etkileşimi ÖzellikAçıklama IRQ ( Interrupt Request) İşlemciye gönderilen istek. Bazı iletim hatları önceliğe sahip olabilir. Giriş/Çıkış (I/O) Adresi Programların aygıtlarla etkileşimini sağlayan tekil sayı değeri. Bellek Adresi RAM ya da ROM bellekte bulunan aygıta ait bilgiyi içeren adres. DMA (Direct Memory Access) Aygıtın doğrudan belleğe veri yüklemesini sağlayan veri yolu.
İşletim Sistemi Nedir? Ne yapar? İşletim sistemi bilgisayar donanımı ile kullanıcı arasındaki etkileşimi sağlayan bir yazılım programıdır. Bilgisayar sistemini kullanıma uygun hale getirir. İşletim sistemi, kullanıcı düzeyindeki yazılım programlarının çalıştırılabilmesi için zemin oluşturur. Bilgisayar donanımının etkin şekilde kullanımını sağlar. İşletim sistemi bir kaynak paylaşımcısıdır. Etkin ve adil kullanım için çakışan kaynak kullanım isteklerini yönetir. İşletim sisteminin iki temel fonksiyonu mevcuttur: Soyutlama (Abstraction) / & Hakemlik (Arbitration)
İşletim Sisteminin Soyutlam a & Hakemlik İşlevleri için Örnekler Intel ve AMD işlemcilerini destekleme. (Soyutlama) Uygulamalar arasında geçiş yapma. (Hakemlik) Uygulamalar için ayrılmış belleği paylaştırma. (Hakemlik) Video konferans uygulamasının tanımlı web kameralarını kullanmasını sağlama. (Soyutlama) Farklı sabit disklere erişim sağlama. (Soyutlama) Ağ üzerinden veri/mesaj gönderme ve alma. (Soyutlama & Hakemlik)
Program – Proses – Thread Basit bir Thread Örneği Komut İkili (Binary) Onaltılı (Hexadecim al) LOAD a A LOAD b B SUM a,b F STORE a+b C Tanımlar Program Belirli işlemleri yapmak üzere tasarlanmış ve bir depolama biriminde saklanan çalıştırılabilir komut dizisi. Proses Programın ana belleğe yüklenmiş ve işleyen örneği. Thread Belli bir işi yürütmeyi amaçlayan küçük ölçekli proses.
Proses Yönetimi İşlemleri İşlemcideki proses ve thread’ler için işleyiş programı oluşturma Kullanıcı ve sistem proseslerini oluşturma ve silme Prosesleri durdurma, başlatmaProseslerin senkronizasyonuProsesler arasında iletişimi sağlama Proses Durumları
Fetch-Execute-Decode Döngüsü Matematiksel ve mantıksal işlemleri yürüten birim AC: Accumulator – Toplama işlemini sağlayan devre ALU ( Arithmetic Logic Unit) PC: Program Counter – Bir sonraki komutun bellek adresini gösteren sayaç MAR: Memory Address Register – Okunacak ya da yazılacak bellek bloğunun adresini tutan kaydedici MDR: Memory Data Register – Bellekten getirilen ya da belleğe yazılacak olan veriyi tutan kaydedici CIR: Current Instruction Register – Şu an yürütülecek olan komutu tutan kaydedici Register (Kaydedici)
CPU Instruction Pipeline Uygulamasının Etkisi
Tek Çekirdekli İşlemci (Single-Core CPU) Hyperthreading Destekli Yapı Çok Çekirdekli İşlemci (Multi-Core CPU) Çok İşlemcili Sistem ( Multi-CPU) İşlemci Tasarımları
Proses Çizelgeleme ve Deadlock Çizelgeleme, işletim sisteminin, donanım kaynaklarını birden çok proses arasında paylaştırmasıdır. Önceliği yüksek olan prosesler dikkate alınır. Hangi kuyruktaki hangi işlemi yürütmeye alacağına karar verilir. İşlemlere ne kadar CPU zamanı ayıracağına karar vermeli Aynı donanım kaynağını kullanmak isteyen iki ya da daha fazla prosese, ilgili kaynağın işletim sistemi tarafından ayrılması ve proseslerin kaynağı kullanmak için birbirini beklemesi işlemi deadlock olarak tanımlanır.
Proses Senkronizasyonu İşletim sisteminin birbirine bağlı prosesler ile ilgili yürüttüğü düzenlenme işlemidir. Örneğin bir proses, belleğin belli bir bloğuna bir veri yazmak (Y), diğer bir proses ise, bu bloktaki veriyi okuyup (O) yazıcıya iletmek istesin. Bu durumda, Y prosesinin, O prosesi ilgili kısımdaki okuma işlemini bitirmeden, mevcut verinin üzerine yazmaması için ya da O prosesinin, Y prosesinin yazma işlemi tam olarak tamamlamadan okuma işlemine başlamaması için her iki prosesin senkronize edilmesi gerekmektedir. Senkronizasyon yöntemleri İşletim sistemi, proseslerin birbiriyle etkileşime girmesi için sistem araçları sağlar. İşletim sistemi, aynı anda yalnızca bir prosesin veriye müdahale etmesini sağlayan bir koruma sağlar.
Komut İşletim Döngüsü (Fetch- Decode-Execute Cycle) ve Temel Kavramlar Komut bellekten getirilir. Komut çözülür, bu diğer ilişkili verilerin bellekten getirilmesini gerektirebilir. Komut işletilir. Bu işlem sonunda sonucun belleğe yazılması gerekebilir. Bellek yönetim birimi yalnızca bellek adreslerini bilir. Bunların hangi işlemler sonucunda oluştuğuyla ilgilenmez. Bellek ve register’lar sadece CPU tarafından doğrudan erişilebilen depolama birimleridir. İşlenmesi gereken veri bellekte değil ise, işlenmek üzere belleğe yüklenmesi gerekir.
Bellek Yönetimi Temel Kavramlar İşlemci üzerinde yer alan register’lar genellikle bir saat frekansında CPU tarafından erişilebilir durumda olur.bir saat frekansında Birçok işlemci bir saat frekansında register içeriği üzerinde bir ya da daha fazla basit işlem yapabilir. Register için olan zaman dilimi bellek için geçerli değildir. Bir bellek çevriminin tamamlanması için genellikle birkaç saat frekansının geçmesi gerekir. Bu durumda, komut yürütürken işleyeceği verinin bulunmaması nedeniyle işlemcinin beklemesi gerekir. Bellek erişimi register erişimine göre oldukça yavaş olduğu için bu istenmeyen bir durumdur. Bunun için işlemci ile bellek arasında tampon bellekler (cache) kullanılır. Bellek yönetiminde önemli olan, sadece erişim zamanı değil aynı zamanda, kullanıcı programlarının sistem programları için ya da başka kullanıcı programları için ayrılan belleğe erişmekten korumaktır.
İşlemci Saat Frekansı İşlemci performansı günümüzde çoğunlukla yongalarının (chip) hızı ile verilmektedir. Buna işlemci saat frekansı denir. Teorik olarak saat frekansı büyük olan işlemcinin birim zamanda daha fazla işlem yaptığı söylenebilir. Ancak başka etkenler de vardır. Hz (Hertz) saniyenin tersidir. (1/s) 1 GHz = 10 9 Hz = Hz Örnek : 3.2 GHz Intel Core i5 3.2 GHz işlemci saniyede işlem döngüsüne girebilme kapasitesine sahiptir. Her bir işlem döngüsünde işlemci belli sayıda ( 32 / 64) bit değeri üzerinde değişklik yapabilir.
Bellek Yönetimi Proses Belleği Bellek yönetiminde her proses için ayrı bir bellek bloğu bulunur. Bunun için iki register’a ihtiyaç duyulur. İlgili prosesin bellek bloğunun başlangıç (base) ve bitiş (limit) adresleri bu register’larda tutulur. Kernel modda çalışan İşletim sistemi hem sistem hem de kullanıcı programları için ayrılmış bellek programlarına erişim hakkına sahiptir. Böylelikle bir problem olduğunda, müdahale edebilir durumda olur Limit : Base :
Bellek Adreslem e İşlemcinin ürettiği adresler mantıksal (sanal) adres olarak tanımlanır. Memory Address Register’a yüklenmiş olan adres (bellek biriminin okuduğu adres) ise fiziksel adres olarak tanımlanır. Base register – Relocation register olarak düşünülür. İşlemcinin ürettiği adrese bu değer eklenir ve fiziksel adres hesaplanır. Kullanıcı programı fiziksel adresi bilmez, sadece mantıksal adrese bilir, tüm işlemleri bu adres üzerinden yapar.
Dinamik Yükleme (Dynamic Loading) ve Bağlama (Linking) Dinamik yüklemede, bir alt program gerekli olduğunda yüklenir. Bütün alt programlar diskteki bir tabloda tutulur. Bir alt programa ihtiyaç duyulduğunda, çağrılır ve bellekteki yerleşim değişiklikleri tabloya bakılarak yürütülür. Dinamik yüklemede gerekli olan bellek miktarı fiziksel bellekle sınırlı değildir. Böylelikle bellek yönetiminde etkinlik sağlanır. Dinamik bağlama, sistem kütüphanelerinin çalışma zamanında belleğe yüklenmesi işlemidir.
Process Swapping (Proses Değiş- Tokuşu) Bir prosesin yürütülebilmesi için belleğe yüklenmiş olması gerekir. Bununla birlikte, proses ikincil bir depolama biriminde tutulup, tekrar belleğe yüklenip işletilebilir. Swapping, belleğin yürütülen prosesler için yetmediği zamanlarda kullanılan bir yöntemdir. Yüksek öncelikli prosesler belleğe yüklendiğinde, düşük öncelikli olanlar geçici olarak diske yazılıp, öncekiler sonlandırıldığında tekrar belleğe yüklenip işletilirler. Swapping işleminin dezavantajı, disk erişim hızının belleğe göre oldukça düşük olmasıdır. Eğer çok sayıda swapping işlemi olursa, bu durum kullanıcıya yavaşlama olarak yansır.
Contiguous (Bitişik-düzen Bellek Ayrımı Bellek yönetiminde, sistem proseslerine ve kullanıcı proseslerine ayrılan bellek blokları bulunur. Bitişik düzen bellek ayrımında, kullanıcı prosesleri için bloklar ardışık hücrelerin birleşiminden oluşur. Bitişik düzen bellek ayrımı, etkin bir yöntem değildir. Bu yöntem kullanıldığında, bellekte atıl kapasite oluşurken, bazı prosesler için gerekli alan ayrılamadığından performans problemleri yaşanma olasılığı artar.
Memory Paging (Bellek Sayfalama) Paging, prosesler için ayrılan bloklara ait hücrelerin bitişik olma zorunluluğunu ortadan kaldıran bir yöntemdir. Paging yönteminde, bir sayfa tablosu bulunur. Prosese ait ilgili kısmın adresi bu tabloda tutulur ve bu tablo okunarak erişilir. Sayfalamada bellek erişimi olduğu için hız oldukça önemli bir faktördür. Her işletim sistemi kendi sayfalama yöntemine sahiptir. Performans problemi yaşanmaması açısından, çoğunlukla sayfa bilgilerini tutan özel register’lar kullanılır. Günümüzde kullanılan sistemlerde iki ya da 3 seviyeli sayfalama tabloları kullanılabilmektedir. Mantıksal Bellek Sayfa 0 Sayfa 1 Sayfa 2 Sayfa 3 Sayfa Tablosu Fiziksel Bellek 0 1Sayfa 0 2 3Sayfa 2 4Sayfa Sayfa 3
Bellek Fragmantasyonu (Fragmentation) Bellek üzerinde bulunan ancak bitişik düzende olmayan kullanılabilir boş alanlara (Dış Fragmentasyon) denilir. Bellek üzerinde herhangi bir proses için ayrılmış bellek bloğundaki kullanılmayan boş alan olarak tanımlanır. (İç Fragmentasyon) Prosesler, bellek üzerinde daha büyük boyutlu bloklara taşınarak boş alanlar kullanılabilir hale getirilir. Proses 1 Proses 2 Proses 3 Proses 4 İşletim Sistemi Global Değişkenler Dinamik Değişkenler Metin Kod BellekProses 3
Belllek Bölümleme (Segmentation) Bölümleme (ya da segmentasyon) belleği etkin kullanmak için başvurulan bir yöntemdir. Birçok güncel sistemde bölümleme(segmentation) ve sayfalama(paging) birlikte kullanılmaktadır. Kullanıcı programı, ana program, global değişkenler, metin, dinamik değişkenler gibi mantıksal segmentlere ayrılır. Her bir segmente ait adres ve boyut bilgisi bir tabloda tutulur. Gerektiğinde erişilerek kullanılır. Ortak kullanılan segmentler olabilir. Örneğin, birden çok web sayfası açıldığında metin bilgileri ortak bir segmentten okunarak işlenir. Global Değişkenler Dinamik Değişkenler Metin Kod Proses 3
Bellek Koruma (Memory Protection) Bellek koruma işlemi, yetkili olmayan bir prosesin bir bellek alanına erişmemesini sağlamak için kullanılan yöntemdir. Bellek koruma, genellikle segmentasyon ile birlikte yapılır. Her segmentin adres ve boyutunun tutulduğu tabloda ayrıca o segmente erişimin mümkün olup olmadığı ( valid / invalid), o segmente dair okuma (read), yazma (write), çalıştırma(execute) işleminin yapılıp yapılamayacağı tanımlanır. Eğer, segmentasyon tablosunda tanımlı izinler dışında bir erişim girişimi olduğu taktirde sistem bir hata üretir ve işlemci çalışması sonlandırılır.
Depolama Yönetimi ile İlgili Hususlar Bellek tüm program ve verileri sürekli saklayabilecek yapıda ve büyüklükte olmadığından, ikincil depolama aygıtı olarak diskler kullanılır. Dosya sistemi, program ve verilerin diskte depolanmasını ve bunlara erişimi sağlayan bir mekanizma sunar. Dosya, biçimi oluşturucusu tarafından tanımlanan birbiriyle ilişkili bir bilgi topluluğudur. Dosyalar, işletim sistemi tarafından fiziksel disklerin belli alanlarına yerleştirilir. Dosyalar, kolay kullanım için klasörler şeklinde organize edilir.
Manyetik diskler, her iki tarafı manyetik malzeme ile kaplanmış plakalardan (1-5) oluşur. Diske veri kaydetme manyetik olarak yapılır. Her plaka üzerinde bir okuma-yazma kafası (read-write head) bulunur. Manyetik disk kullanımdaki iken bir sürücü motor dönüş yapar. Dakikada 5400, 7500 ve dönüş (RPM). Manyetik diskler için, iki hız değeri söz konusudur. Erişim hızı ve transfer hızı. Diskler bilgisayar sistemine bir dizi giriş- çıkış veri yolu ile bağlıdır. ( ATA, PATA, SATA, eSATA, USB, SAS, FC ) Manyetik Disklerin Yapısı
Katı hal disklerinin hareketli parçası bulunmadığı için manyetik disklere göre daha güvenli, veri erişiminde arama ve gecikme zamanı oluşmadığı için manyetik disklere göre daha hızlıdır. Katı hal diskleri, manyetik disklere göre daha az enerji tüketirler. Üretim maliyetleri manyetik disklere göre daha yüksek, boyutları daha küçük, kapasiteleri ve kullanım ömürleri ise genellikle daha azdır. Manyetik teypler, günümüzde pek kullanılmayan ikincil depolama aygıtlarıdır. Diğer disklere göre genellikle daha uzun ömürlü ve daha fazla kapasiteye sahip olmalarına rağmen, erişim hızları oldukça düşüktür. Genellikle sıkça kullanılmayan verileri yedekleme amaçlı olarak kullanılırlar. Diğer Diskler (Katı Hal Diski – Manyetik Teyp) SSD Disk Harici Teyp Sürücü
Disk Kullanımı Host-Attached ve Network- Attached Storage Diskler bilgisayar sistemi içinde iki şekilde kullanılır: Yerel giriş-çıkış birimleri üzerinden ( Host-Attached) ve uzaktaki bir aygıt aracılığıyla dağıtık bir dosya sistemi üzerinden ( Network-Attached) Ağ üzerinde bulunan depolama aygıtları, NAS (Network-Attached Storage) olarak adlandırılır. NAS erişimi, uzak prosedür çağrıları aracılığıyla sağlanır. Ağ üzerinden depolama aygıtı erişimi, farklı bilgisayarların ortak kullanımını sağladığından yerel kullanıma göre avantajlı iken, erişim hızı bakımından dezavantajlıdır.
Depolama Alanı Ağı (Storage Area Network – SAN) Ağ erişimli depolama sistemlerinin temel problemlerinden birisi, giriş-çıkış işlemlerinin ağın bant-genişliğini tüketmesidir. Bu da erişim gecikmelerine sebep olur. SAN sistemlerinin gücü, esnek olmalarından kaynaklanır. Bir SAN sistemi üzerinde birçok bilgisayar ve depolama aygıtı konumlandırılabilir. Bir SAN anahtarı (switch) bilgisayar ve depolama aygıtları arasındaki iletişimi kontrol eder. Erişime imkan verebilir, ya da kısıtlayabilir. Bir örnek olarak, SAN üzerindeki bir bilgisayarda boş disk alanı azalmış ise, SAN üzerinde düzenleme yapılarak o bilgisayarın kullanabileceği disk alanı artırılabilir.
Disk Çizelgeleme (Disk Scheduling) Diskler için en önemli husus, yüksek bant-genişliği ve hızlı erişimdir. Arama zamanı (seek time), disk kolunun erişilmesi istenen sektörün bulunduğu silindire taşınması için geçen süredir. Dönme gecikmesi (rotational latency) ise, disk okuma-yazma kafasının erişilmesi istenen sektöre kadar döndürülmesi için geçen ek zamandır. Disk bant-genişliği, diske yapılan ilk erişim isteği ile transferin tamamlanması arasında geçen toplam sürenin, transfer edilen toplam veriye bölümü ile elde edilir. Disk çizelgeleme, hem erişim zamanını hem de bant- genişliğini iyileştirmek amacıyla gerçekleştirilen bir disk yönetim faaliyetidir.
Disk Çizelgeleme Yöntemleri FCFS ( First-Come First-Served): FCFS ( First-Come First-Served): İlk gelen istek ilk olarak yerine getirilir. Bu yöntem basit olmasına rağmen etkin bir yöntem değildir. SSTF ( Shortest- seek-time-first ): SSTF ( Shortest- seek-time-first ): Okuma yazma kafasına en yakın olan erişim isteği yerine getirilir. SCAN (Tarama): SCAN (Tarama): Disk kolu, diski bir uçtan diğer uca doğru iki yönlü olarak sürekli tarayarak, üzerine geldiği silindirde var olan erişim istekleri yerine getirilir. C-SCAN (Circular Scan): C-SCAN (Circular Scan): Disk kolu tarama yaptığı yöndeki en uzak silindirdeki isteği yerine getirerek ters yöne döner. LOOK ve C- LOOK: LOOK ve C- LOOK: Bu yöntemlerde tarama yönteminin benzerleridir. Bu yöntemlerin farklılığı, herhangi bir yöne hareket etmeden önce istek beklemeleridir. Disk çizelgeleme yöntemleri manyetik diskler için uygulanır. SSD disklerde hareketli bir mekanizma bulunmadığında n FCFS, temel olarak uygulanan yöntemdir.
Disk Yönetimi – Disk Yapısı ve Biçimlendirme İşletim sistemi, disk yönetimi kapsamında disk başlatma (initialization), disk biçimlendirme (formatting) ve bozuk-blok düzeltme (bad-blok recovery) gibi işlevleri yürütür. Yeni bir manyetik disk, boş durumdadır. Bu diske veri kaydedilebilmesi için öncelikle, disk kontrolörünün okuyup yazabilmesi için sektörlere ayrılmalıdır. Bu işleme düşük seviye biçimlendirme (low-level formatting) ya da fiziksel biçimlendirme denilir. Fiziksel biçimlendirmede, her bir sektör özel verilerle yapılandırılır. Bu veriler, çoğunlukla başlık (header), veri alanı (data area) ve kuyruk(trailer) şeklindedir. Başlık ve kuyruk, disk kontrolörünün kullanacağı sektör numarası ve hata doğrulama kodu ( Error Correcting Code – ECC) gibi bilgileri içerir.
Disk Yönetimi – Disk Yapısı ve Biçimlendi rme Fiziksel disk biçimlendirmesi, İşletim sisteminin diski kullanmaya başlaması için yeterli değildir. İşletim sisteminin diski kullanmaya başlaması için kendi veri yapısını diske yazması gerekir. Bu iki aşamada yapılır. İlk aşamada disk bölümlendirme (partitioning) ikinci aşamada ise mantıksal biçimlendirme (logical formatting) yapılır. Mantıksal biçimlendirme dosya sisteminin oluşturulması demektir. Çok çeşitli dosya sistemleri mevcuttur. Windows sistemlerde FAT32 ve NTFS yaygın olarak kullanılır. ReFS ise Windows 8 sunucu sistemleri için geliştirilmiş yeni bir dosya sistemidir. VMFS, sanal makinelerin imajlarını ve anlık görüntülerini (snapshot) sakalamak için geliştirilmiş bir dosya sistemidir. Yaygın Olarak Kullanılan Dosya Sistemleri Windows FAT – FAT32 NTFS ReFS Linux EXT ReiserFS XFS, JFS Macintosh HFS+ BSD, Solaris UFS Dağıtık Sistemler ZFS Xscan VMFS GFS
Disk Yönetimi – Disk Başlatma Açılış programı (bootstrap) çoğu bilgisayarda ROM’da tutulur. ROM’ların başlatmaya ihtiyacı olmaması ve sabit bir adreste çalışması, işlemcinin açılışta ve yeniden başlatmada doğrudan bu programı yürütebilmesini sağlar. ROM sadece okunabilir olduğu için virüs bulaşma riski de yoktur. Açılış programı ile ilgili problem, bu programda değişiklik yapmanın donanım çipini değiştirme zorunluluğunu ortaya çıkarmasıdır. Bundan dolayı, birçok sistemde işi sadece tam açılış programını diskten getirme görevi olan küçük bir açılış programı ROM’da tutulur. ROM’daki küçük açılış programı, disk kontrolörüne açılış bloklarını okuması gerektiği sinyalini gönderir ve bu kodu işletmeye başlar. Tam açılış programı işletim sisteminin gerekli kısımlarını belleğe yükleyip başlamasını sağlar. Windows işletim sistemindeki bir açılış sürecini düşünelim. Windows disk bölümlemeye imkan veren bir işletim sistemidir. Bölümlerden birisi ise işletim sistemi ve aygıt sürücülerini içeren sistem bölümü olarak ayrılmıştır. Windows sisteminin açılış kodu, diskin ilk sektöründe (MBR – Master Boot Record) tutulur. ROM’daki açılış programı ile başlayan açılış süreci, MBR’deki açılış koduna yöneltilir. Ayrıca, MBR diskteki bölümleri ve hangi bölümün sistem bölümü olduğunu tutan bir tabloya sahiptir. Sistem açılış bölümüne ulaşarak, açılış sektörünü okur ve alt sistemleri ve servisleri yüklemeye başlar.
RAID (Redundant Arrays of Independent Disks) RAID (Redundant Arrays of Independent Disks) Diskler giderek daha küçük boyutlu ve ucuz hale gelmektedir. Bir bilgisayar sisteminde birden fazla fiziksel disk kullanımı da ekonomik olarak uygun hale gelmiştir. Disklerin paralel işletilebilmesi mümkün olduğunda, birden fazla fiziksel disk kullanımı okuma yazma hızlarında performans sağlaması söz konusu olur. Ayrıca, böyle bir kullanımda veri güvenilirliği de artırılabilir. Disklerden birisinde problem meydana geldiğinde veri kaybı yaşanmaz. Birden fazla fiziksel diskin erişim hızı ve veri güvenilirliğini artırmada kullanılmak üzere yapılan disk organizasyonuna genel olarak RAID denilir.
RAID (Redundant Arrays of Independent Disks) RAID (Redundant Arrays of Independent Disks) Geçmişte, düşük kapasiteli ucuz disklerin RAID destekli kullanımı, yüksek kapasiteli pahalı disklere bir alternatif olarak görülüyordu. Günümüzde ise, ekonomik nedenlerden ziyade RAID yapısı, daha yüksek veri güvenilirliği ve daha hızlı veri transferi sağlamak amacıyla tercih edilmektedir. Birden fazla fiziksel diskin tek bir diske göre problem oluşturma ihtimali daha düşüktür. Eğer, verilerin bir kopyası başka bir fiziksel diskte de tutulursa meydana gelecek bir problemde veri kaybı yaşanmaz. Verilerin güvenilirliğini sağlamada bir aslında ihtiyaç duyulmayan ama bir hata durumunda veri kaybını önlemek amacıyla kullanılan ilave veri tutma (redundancy) özelliği kullanılır.
RAID (Redundant Arrays of Independent Disks) RAID (Redundant Arrays of Independent Disks) En basit ancak en pahalı yedeklemeli çözüm her diskin bir kopyasını oluşturmaktır. Bu tekniğe aynalama (mirroring) denilir. Aynalama işleminde, yazma işlemi iki fiziksel diske birden yapılarak veri yedeklenir. Disklerden birisi erişilemez olduğunda diğer diskle devam edilir. Aynalama ile, aynı durumdaki iki diske iki okuma isteği gönderilmek suretiyle disk okuma hızı iki katına çıkarılabilir. Transfer hızı tek diskli bir sistemle aynı olmasına rağmen, birim başına okuma hızı iki katı olur.
RAID (Redundant Arrays of Independent Disks) RAID (Redundant Arrays of Independent Disks) Data stripping, ardışık biçimdeki bir veri bloğununun (örneğin bir dosya) farklı segmentler halinde farklı fiziksel aygıtlara depolanması işlemidir. Data stripping aracılığıyla, veri transfer oranı da artırılabilir. Data stripping tekniğinin en yalın hali, verinin her bayt’lık kısmının bit’lerinin farklı disklere yazılmasıdır. Diğer bir teknik ise blok seviyesinde data stripping uygulanmasıdır. Bu durumda da, örneğin dosyanın blokları farklı disklere yazılır. Daha küçük boyutlardaki verilere çoklu sayıda hızlı erişimle veri transfer oranı artırılır.
Blok seviyesinde data stripping uygulanırken, redundancy yoktur. En az iki disk gerektirir. Hız sağlar, güvenilirlik sağlamaz. RAID 0 Disk aynalamanın karşılığıdır. En az iki disk gerektirir. Veri güvenilirliği en yüksek düzeyde sağlanır. Kapasite küçük boyutlu diskle sınırlıdır. RAID 1 Yaygın RAID Uygulamaları
Hem data-stripping hem de redundancy uygulanır. RAID 5 için en az 3 fiziksel disk gereklidir. İki diskte kopya veriler yazılırken, 3. diske bu verilerin organizasyonu ile ilgili bilgi yazılır. Hem veri güvenirliği hem de hız sağlanır. RAID 5 RAID 0+1, RAID 1+0 RAID 5+0, RAID 5+1 RAID 100 Diğer Düzenler Yaygın RAID Uygulamaları
Dosya Sistemi Dosya Kavramı Bilgisayar sistemi, çok sayıda depolama ortamını (sabit disk, CD/DVD, Flash disk vb.) kullanabilir. Bu donanımlar, farklı yapıları ve işleyişleri kullanıcıya yansıtılmadan mantıksal bir gösterimle kullanıma sunulur. İşletim sistemi bu soyutlamayı dosya adlı mantıksal depolama birimiyle sağlar. Dosyalar, işletim sistemi tarafından disklere yazılır ve çoğunlukla dosyaların tutulduğu yerler değişiklik göstermez. Dosya, ikincil bir depolama aygıtında saklanan, birbiriyle ilişkili bir ver topluluğudur. Dosya kullanıcı için parçalanamayan en küçük kayıt birimidir. Bilgisayarda bir veri bir dosya oluşturmadan saklanamaz.
Dosya Özellikleri Dosyalar sayısal, alfa-sayısal ya ikili verilerden oluşabilir. Dosyalar, programlar aracılığıyla özel alanlara sahip olacak şekilde oluşturulur. Tip. Bir dosyayı diğerinden ayırt eden bilgidir. Böylece birbirinden farklı özellikteki dosyalar yönetilebilir. Kayıt yeri. Dosyanın bulunduğu depolama birimini ve o depolama birimindeki yerini gösterir. Boyut. Dosyanın, byte ve katları cinsinden büyüklüğünü gösterir. Erişim Durumu. Dosyaya hangi kullanıcıların (misafir, yönetici) hangi izinlerle (okuma, yazma, çalıştırma) erişebileceğini gösterir. Oluşturan Kullanıcı ve Oluşturma Tarihi. Dosyanın hangi tarihte, hangi kullanıcı tarafından oluşturulduğu bilgisini verir. Veri güvenliği için önemli bir bilgidir.
Dosya İşlemleri Dosya Oluşturma. Dosya oluşturma işlemi için iki adım gereklidir. İlk adımda, dosya için yer ayrılır. İkinci adımda ise, ilgili klasörde dosya için bir giriş oluşturulur. Dosyaya Yazma. Dosyaya veri yazmak için iki parametre kullanılarak bir işletim sistemi fonksiyonu çağrılır. İlk parametre, içine veri yazılacak dosyanın ismini, ikincisi ise yazılacak veriyi belirtir. İşletim sistemi bir sonraki yazma işleminin yeri için bir işaretçi tutar. Her yazma işleminden sonra işaretçi de güncellenir. Dosyadan Okuma. Dosyadan veri okumak için yazma işlemindekine benzer şekilde iki parametreli sistem çağrısı kullanılır. İlk parametre dosyanın ismini gösterirken, ikincisi okunacak veri bloğunun bellekte yazılacağı yeri gösterir. Okuma işlemi için de her okumadan sonra güncellenen bir işaretçi tutulur.
Dosya İşlemleri Dosya İçinde Yeniden Konumlanma. Bazı durumlarda, dosya içindeki işaretçinin konumu değiştirilir. Bu işlemde bir giriş/çıkış yapılması gerekmez. Dosya Silme. Dosya silme işlemi için dosya ismi kullanılarak öncelikle ilgili klasördeki dosya girişi bulunur. Dosyaya ayrılmış alan boşaltıldıktan sonra, dosya girişi de silinir. Dosya İçeriğini Silme. Bazı durumlarda dosyanın yalnızca içeriği silinir. Bu durumda dosyanın girişi ve öznitelikleri (boyut hariç) saklanırken, dosya için ayrılmış alan boşaltılır. Diğer İşlemler. Dosyanın sonuna veri ekleme, dosya ismini değiştirme, kopyalama, taşıma, görüntüleme, yazdırma, dosyanın özniteliklerine erişim ve değiştirme
Dosya İşlemleri İlgili Hususlar İşletim sistemi, açık olan dosyalar için proses bazlı indeksli bir tablo oluşturur. Bu tablodaki dosyalar ile ilgili bir işlem olduğunda arama yapmadan indeksler kullanılarak performans elde edilir. Dosya kapatıldığında onunla ilgili bilgiler bu tablodan silinir. Silme, isim değiştirme gibi işlemler kapalı dosyalar üzerinde yürütülür.
Dosya İşlemleri İlgili Hususlar Dosya açma ve kapatma işlemleri, birden fazla prosesin aynı dosyaya açmak ya da kapatmak istediği durumlarda oldukça karmaşık bir hal alır. Bu durumda, işletim sistemi açık dosyalar için iki tablo tutar. İlk tablo proses bazlı tablodur. Bu tabloda bir prosesin açtığı her bir dosyaya ilişkin bilgiler (işaretçi, erişim hakları vb.) tutulur. İkinci tablo ise sistem geneli için tutulur. Bu tabloda da dosyanın diskteki yeri, boyutu ve erişim tarihleri gibi bilgilerle herhangi bir prosesin bu dosyayı açtığına ilişkin bilgiler tutulur.
Dosya İşlemleri İlgili Hususlar Genel olarak, bir dosya bir proses tarafından açıldığında bir durum sayacı 1 artırılır, kapatıldığında ise 1 azaltılır.Durum sayacı 0 olması dosyanın artık açık olmadığı anlamına gelir ve tablodan o dosyaya ait bilgiler silinir. Dosya ile ilgili olarak tutulan bilgiler özetle; dosya işaretçisi, durum sayacı, dosyanın diskteki yeri ve dosya erişim yetkileridir. İşletimi sistemleri dosyaları iki şekilde erişime kapatır: paylaşımlı kilit (shared lock) ve özel kilit (exclusive lock). Paylaşımlı kilitlemede, dosya bir proses dışındaki diğer tüm prosesler için yazmaya karşı korumalı hale getirilir ancak okuma yapabilmek mümkündür. Özel kilitlemede ise, okuma ve yazma işlemi ikinci bir proses tarafından yapılamaz.
Dosya Erişim Biçimleri Sıralı Erişim (Sequential Access) En çok kullanılan ve en temel erişim biçimidir. Dosya içindeki veri birbiri ardına işlenir. Örneğin derleyici (compiler) programları bu erişim biçimini kullanır. Direk Erişim (Direct/Relative Access) Dosyadaki veri bloklarının rasgele okunması ya da yazılmasına imkan veren erişim biçimidir. Veritabanı dosyalarına erişim çoğunlukla bu yöntemle olur. Diğer Erişim Biçimleri Genellikle direk erişimin farklılaştırılmasında elde edilen yöntemlerdir. Örneğin, dosyadaki veri bloklarının diskteki yerlerinin indekslenerek okunması ya da çok büyük boyutlu dosyalarda, indeks dosyalarının da indekslenmesi ile kullanılabilir.
SistemArşivResimMüzikVideoMetinOfisVeritabanıWebYedeklemeDiğer EXEZIPBMPWAVMPEGTXTDOCxACCDBHTMLISOPDF COMRARJPGVMADATCSVODTMDFJSNRGSVG BATAIRGIFMP3MP4RTFXLSxMYDCSSBINMAT TTFPNGCDAAVISRTODSDBFASPxWMF DLLTIFFMOVSUBPPTxSQLPHPEPS CPLICOFLVODPXMLJSPFLA MSIPSDPS SYS3DS TMPDWG LOG TORRENT INIVSDx Yaygın Olarak Kullanılan Dosya Biçimleri
Klasör İşlemleri Klasör, dosyaların organize edildiği mantıksal birimdir. İşletim sistemi, dosyalar üzerinde olduğu gibi klasörler üzerinde de çeşitli işlemlerin yapılmasını sağlayan fonksiyonlara sahiptir. Klasör İsimlendirme Klasör Oluşturma Klasör Silme Klasör Yedekleme Klasör Paylaşma Kullanıcılar sahip oldukları yetkilerle ( kendileriyle paylaşılmış) bir dosyaya ya da bir klasöre erişim sağlayıp bunlar üzerinde işlem yapabilir. Uzak dosya sistemlerinde, dosya ya da klasör erişimleri çoğunlukla FTP, dağıtık dosya sistemi ya da HTTP üzerinden yürütülür. Dağıtık dosya sistemlerinde ise, uzaktaki bilgisayarın klasörleri yerel bilgisayar üzerinde listelenir ve erişilebilir.
Dosya Koruma ve Paylaşımı ile İlgili Hususlar Bilgisayar sisteminde saklanan veriler iki bakımdan koruma altında tutulur. Fiziksel bozulmalara karşı koruma ( güvenilirlik – reliability) İzinsiz erişime karşı koruma (protection) Güvenilirlik, genellikle yedekleme ya da RAID gibi yapılarla sağlanır. Dosyalarla ilgili Okuma, Yazma, Çalıştırma, Veri Ekleme, Silme, Listeleme, gibi yetkiler mevcuttur. Kopyalama, Taşıma, İsimlendirme gibi işlemler de kontrol altında tutulabilir. İşletim sistemi, hangi kullanıcının hangi dosya ile ilgili ne tür yetkileri olduğunu Erişim-Kontrol- Listesinde (Access Control List) tutar. Çok fazla dosyanın olduğu bir sistemde, böyle bir listeye giriş yapılması ve bu listeden okunması performans üzerinde olumsuz etki yapar. Erişim Kontrolü Erişim-Kontrol-Listesi yerine, birçok işletim sistemi bu listenin daha kullanışlı bir şekli üzerinden yetki kontrolü yapar. Bu kullanımda, Oluşturucu (Owner), Group ( Paylaşılan Kullanıcı Grubu) ve Universe ( Diğer tüm kullanıcılar) ait haklar tanımlanır. Örnek: drwxrw-r-- Paylaşımlı Kullanım
Aygıt Sabit disk, monitör vb. Giriş/Çıkış Sistemi Aygıt sürücüleri ve kesme (interrupt) yöneticilerini içerir Basit Dosya Sistemi Sadece temel komutları, uygun aygıt sürücülerine bildirir. Dosya Organizasyon Sistemi Dosyalar ve onların fiziksel ve mantıksal blok adreslerine ilişkin bilgiye sahiptir. Mantıksal Dosya sistemi Dosya verileri dışındaki tüm mantıksal dosya yapısını saklar. Uygulama Programları Okuma, yazma isteği oluşturulur. Dosya bilgileri, verilerin yeri, ve dosya izinleri, B ’ye iletilir. Dosyanın mantıksal blok adresi, fiziksel blok adresine dönüştürülerek C ’ye iletilir. Okuma, yazma isteği uygun aygıt sürücüsüne yönlendirilir. Gelen yüksek seviyeli komut isteğini donanım komutuna dönüştürür. Okuma yazma işlemi sonlandırılır. A B C D E F Dosya Sistemi Yapısı ve İşleyişi
Disk Alan Ayrımı Yöntemleri Disklerin direk erişime imkan veren yapıları, dosya işlemleri için esneklik sağlarken etkin ve hızlı erişim için disk alanının dosyalara nasıl ayrılacağı problemini ortaya çıkarır. Bitişik-Düzen alan Ayrımı Bitişik-Düzen alan ayrımında, diskin sıralı blokları blok sayısı belirtilerek dosyalar için ayrılır. Bu yöntemde arama zamanı oldukça kısalmış olur. Bu yöntemdeki temel dezavantaj ise yeni bir dosya için uygun boş alan bulma işidir. Diğer bir problem ise dosyalar (dosya boyutu değişken olabilir) için ayrılacak alan miktarının belirlenmesidir.
Disk Alan Ayrımı Yöntemleri Bağlantılı Alan Ayrımı Bağlantılı alan ayrımında, bitişik-düzendeki uygun boş alan bulma problemi ortadan kaldırılır. Bu yöntemde, fiziksel olarak diskin herhangi bir bölgesinde bulunan bloklar birbirlerine işaretçi (pointer) aracılığı ile bağlanarak dosya verilerinin tutulmasında kullanılır. Bu yöntemin temel dezavantajlarından birisi arama zamanını artırmasıdır. Dosyadaki belli bir veriye ulaşmak için o verinin bulunduğu bloktan önceki tüm blokların taranması gerekir. Bağlantılı alan ayrımındaki diğer bir problem ise veri güvenilirliği ile ilgilidir. İşaretçilerden herhangi birisine bir şekilde erişim mümkün olmadığında veri güvenirliği kaybolur. Ayrıca, işaretçiler için ayrıca alan ayırmak gerektiğinden diskin bir kısmı (yaklaşık %1) bunları saklamak için kullanılır. İndeksli Alan Ayrımı İndeksli alan ayrımı, bağlantılı alan ayrımındaki problemlere çözüm getirir. Bir dosyanın parçalarını tutan blokların adreslerini gösteren tüm işaretçiler bir indeks dizisinde toplanır, böylece hızlı şekilde dosya bütünlüğü içinde verilere ulaşılabilir.
Dosya Sistemi Alan Ayrımı Bitişik-Düzen (Contiguous Allocation) Bağlantılı (Linked Allocation) İndeksli (Indexed Allocation)
Diskteki Boş Alan Yönetimi Diskteki boş alanların yönetimi Bit vektörü, Bağlantılı liste, Gruplama, Sayma gibi farklı yöntemlerle yapılır. Bit vektörü yönteminde boş olan blok için 0, olmayanlar için 1 kullanılarak tüm bloklar işaretlenir. Bağlantılı liste yönteminde, her boş blok için, bir sonraki boş bloğun adresini gösterecek şekilde bir işaretçi kullanılır. Gruplama yönteminde, n. boş blok ilk n-1 boş bloğun adresini tutacak şekilde bir yapıya sahiptir. Sayma yönteminde ise, bulunan ilk boş bloktan sonra sıralı şekilde boş olan tüm blokların adresleri tutulur.
Uyumluluk Kontrolü – Yedekleme/Geri Alma İşletim sistemlerinde mevcut klasör yapısını diskteki veri blokları ile karşılaştırarak uyumluluk sorunlarını geren sistem programları bulunur. ( UNIX: fsck, WINDOWS: chkdsk ) Yedekleme(ba ckup) ve geri alma(restore) işletim sisteminin sağlaması gerekli işlemlerdendir. Bilgisayar sisteminin çökmesi durumunda daha önce yedeklenmiş olan veriler geri alınabilir. Yedekleme için çoğunlukla başka bir disk ya da ortam tercih edilir. Yedeklemede genellikle 2 şekilde yapılır: 1-tam yedekleme, 2- artan yedekleme Tam yedeklemede tüm dosyalar yedeklenir. Artan yedeklemede ise, bir önceki yedeklemede n sonra değişen dosyalar yedeklenir. Böylece değişikliğe uğramayan dosyalar sürekli kopyalanmaz.
Giriş Aygıtları FareJoystickKlavyeWeb KameraMikrofonDijital Kalem Barkod Okuyucu MIDI KlavyeTarayıcı Oyun Direksiyonu Grafik Tablet
Çıkış Aygıtları ProjektörKulaklıkHoparlörMonitörYazıcı
Giriş & Çıkış Özelliğine Sahip Aygıtlar Kulaklık SetiModemEthernet KartıFlash Disk Çok Fonksiyonlu Yazıcı Dokunmatik Ekran
BİLGİ SİSTEMİ GÜVENLİĞİ SİBER SALDIRI, SİBER GÜVENLİK
Internet’e Bağlı Cihazlar
Internet Uluslararası / Ulusal Bağlantı Hatları
Siber Saldırı (Cyberattack) Siber saldırı bilgi sistemlerine yönelik kasıtlı, kötü niyetli ve yetkisiz erişim olarak tanımlanır. Siber saldırı, bilgi sistemi işleyiş süreçleri ve verilerini değiştirmek veya yok etmek amacıyla zararlı yazılımların işletilmesi eylemidir. Siber saldırı aşağıdaki sonuçları ortaya çıkarabilir: Kimlik bilgisi hırsızlığı, hilekarlığı Zararlı yazılımların bilgi sistemi içine yerleşmesi Bilgi sistemi hizmetlerinin işleyemez hale gelmesi Güvenlik açıkları Şifre / Parola ele geçirilmesi Gizli ve özel bilgilerin / değerlerin ele geçirilmesi
Siber Saldırıları Karşılaştırma Grafiği
Saldırıların Neden Yapılıyor?
Saldırılar Kimleri Hedefliyor?
Korumaya Çalıştıklarımız Nelerdir? Bilgi sistemi ve ağ altyapısı Donanım, yazılım ve hizmetler Entelektüel Varlıklar Patentler, kaynak kodlar, özel formüller, mühendislik planları Finansal Veriler Banka hesapları, kredi kartı verileri, finansal işlem verileri Hizmet Erişilebilirliği ve Verimliliği Saygınlık ve İmaj Şirket ve marka imajı
Kimleri Yakalamaya Çalışıyoruz? Bilgi ve yeteneklerini kanıtlamak amacıyla saldırır. Özel yazılımlar kullanır Sistem açıklarını ifşa etmezler, bunları kendi kaynakları olarak kullanabilirler Siyah Şapkalı Hacker Etik hacker - Bilgi güvenliği ve ağ uzmanı Açık bulma ve kapatma amaçlı çalışır. Beyaz Şapkalı Hacker Yetenekleri orta düzeydir. Sonraki dönemlerde siyah ya da beyaz şapkalı hacker olabilirler. Gri Şapkalı Hacker Üstün yetenekli finansal kazanç amaçlayan saldırgan tipi Bilgi sistemi ve ağ kaynakları için en büyük tehdit. Bilgi hırsızlığı, yok edilmesi, erişime kapatılması Cracker
Siber Güvenlik (Cybersecurity) Bilgi Teknolojileri Güvenliği olarak da adlandırılan Siber Güvenlik, kötü niyetli ya da yetkisiz bir şekilde bilgi sistemlerine yönelik erişme, değiştirme ve yok etme girişimlerini önlemek amacıyla bilgisayarlar, bilgisayar ağları, yazılım programları ve verileri koruma altına almak için uygulanan tüm güvenlik tedbirleri olarak tanımlanır.
Siber Güvenlik Neden Önemli? Siber saldırılar, Ülkelerin çeşitli konulardaki siyasi duruşlarının tespit edilmesi, Askeri ve gizli bilgilerinin elde edilmesi, Borsa ve ekonomilerine zarar verilmesi, Ulusal güvenliklerine karşı tehdit oluşturulması, gibi yollarla ülkeleri var olma ve ekonomik / siyasi / askeri olarak güçlü olma hedeflerinden saptırıyor.
Siber Güvenlik Neden Önemli? Ocak 2015’ te Dünya Ekonomik Forumu – World Economic Forum (WEF) tarafından yayınlanan Global Risks 2015 raporuna göre dünya genelinde şirketlerin % 90’ ı kendilerinin siber saldırılara karşı yeterli korumaya sahip olmadığının farkında. Siber saldırılar, Şirketlerin hizmetlerini aksatarak ya da durdurarak, Ticari sırlarını ele geçirerek ( Ürün fiyat politikalarını öğrenerek ) Marka ya da imajlarına zarar vererek şirketleri ticari olarak çok zor durumda bırakıyor.
Siber Güvenlik Neden Önemli? Siber saldırılar, Kişilerin kimlik bilgilerinin çalınması ve kötüye kullanılması, Özel ve gizli bilgilerinin deşifre edilmesi, Hesap bilgilerinin / değerli varlıklarının çalınması, Kullandığı sistemlerin düzgün işleyemez hale getirilmesi, gibi yollarla kişilerin hak ve hürriyetlerini tehdit ediyor.
TEMEL AĞ KAVRAMLARI AĞ CİHAZLARI, OSI REFERANS MODELİ, BAĞLANTI TEKNOLOJİLERİ
Ağ İletişim Ortamları İletişim Ortamı KabloluTwisted-PairCoaxialFiber-Obtic Power KablosuzMicro-wave Radio- Transmission
Ağ Kablo Tipleri EthernetTwisted-PairCoaxialFiber-OpticPower
Kişisel Alan Ağı ( Private Area Network – PAN )
Yerel Alan Ağı ( Local Area Network – LAN )
Ağ Topolojileri Yeni bir cihaz ekleme, sorun giderme, mesafe desteği, maliyet LAN bağlantıları için Star topolojisi uygulanır. Hybrid : Topolojilerin birlikte uygulanması WAN bağlantısı için Mesh topolojisi uygun.
Şehir Alan Ağı ( MAN ) – Geniş Alan Ağı ( WAN ) – Internet
Ağ Cihazları – Hub, Switch, Router Hub (Dağıtıcı) Hub'ın bir portuna gelen veri diğer tüm portlarına kopyalanır. Switch (Anahtar) Switch’in bir portuna gelen veri yalnızca başka bir yada belli sayıdaki cihaza yönlendirilir. Router (Yönlendirici) Router, ağlar arasında veri paketlerini yönlendirmeyi sağlayan cihazdır. Dönüştürücü, ağlar arasında transfer edilen veri paketlerini hedef ağın yapısına uygun bir biçime dönüştürmeyi sağlar. Firewall, veri trafiğini filtrelemeyi sağlayan güvenlik cihazıdır. Günümüzde, birçok ağ cihazının işlevlerini yerine getirebilen bütünleşik ağ cihazları mevcuttur. ModemHubSwitch RouterDönüştürücüFirewall
Internet Bağlantı Tipleri Dial-Up ( Çevirmeli Bağlantı )DSL ( Digital Subscriber Line ) ADSL, VDSL, SDSL, HDSL CablePower LinesWireless WiFi, WiMax Satellite ( Uydu )Cellular ( Hücresel ) GPRS, EDGE, CDMA, 3G, HSPA+, LTE
Uluslararası Standardizasyon Kuruluşları & Ağ İletişimi Standartları ISO / ANSIIETF / ITUIEEE / ETSI ISO Standartları ISO/IEC/IEEE : Ethernet ISO/IEC : LAN / MAN ISO/IEC/IEEE : Wireless LAN MAC ISO/IEC : NFC Security ANSI Standartları ANSI C12.22: Veri İletişim Ağları ANSI C12.19: Sonlandırıcı cihazlar ANSI/TIA-568-C.4: Coaxial kablolama ANSI/TIA-568-C.3: Fiber-optik kablolar IETF Standartları RFC 791: IPv4 (1981) RFC 959: FTP (1985) RFC 1034: DNS (1987) RFC 1777: LDAP (1995) RFC 1939: POPv3 (1996) RFC 1945: HTTP 1.0 (1996) RFC 3031: MPLS (2001) ITU-T Standartları ITU-T X.1500: Siber güvenlik ve saldırılar ITU-T X.805: Güvenlik açıkları ASN.1 Protokol ve sistem tasarımı IEEE Standartları IEEE 802.7: LAN kablolama IEEE 802.8: Fiber-optik bağlantı IEEE : WiFi IEEE : Bluetooth IEEE 1394: FireWire ETSI Standartları ETSI EN : Kablo TV ETSI EN : 3G Hücresel ağlar ETSI EN : WiMAX Baz İstasyonları ETSI EN : Sayısal Radyo Sistemleri ETSI EN : CDMA gereksinimleri
İletişim Modeli & OSI Referans Modeli Ağ kavramının amacı iletişim, iletişimin amacı ise, etkileşim ve bilgi paylaşımıdır. İki ağ cihazı arasındaki iletişimin güvenli ve doğru şekilde olması için kurallar vardır. Kurallar topluluğuna Protokol, protokol gruplarına ise İletişim modeli denir. OSI (Open Systems Interconnection) bir iletişim modelidir. OSI iletişim modelini destekleyen bir sistem diğer sistemlerle iletişime açık demektir. Her katmanın kendi seviyesindeki diğer katmanla arasındaki iletişimi tanımlayan protokoller bulunur. Application Layer Protocols, Presentation Layer Protocols, ….
2.B Veri 7.B6.B5.B4.B3.B2.B Veri 2.K7.B6.B5.B4.B3.B Veri 7.B6.B5.B4.B Veri 7.B6.B5.B Veri 7.B6.B Veri 7.B Veri GöndericiAlıcı 2.K 2. Katman Başlığı2. Katman Kuyruğu 7.B6.B5.B4.B3.B2.B Veri 2.K Veri (Data) 6 Veri (Data) 5 Veri (Data) 4 Kısım (Segment) 3 Paket (Packet) 2 Çerçeve (Frame) 1 Bit Dizisi (Bit Sequence) OSI Katmanları
7. Katman (Uygulama – Application) Kullanıcının ağ ile ilgili işlemleri için işletim sistemi ya da uygulamalarla etkileşime girdiği katmandır. Uzak dosya erişimi, proses-iletişimi, klasör hizmetleri, ağ yönetimi 6. Katman (Sunum – Presentation) Uygulama katmanında görüntülenecek ya da gönderilecek verinin biçimlendirildiği katmandır. Karakter kod çevrimi (ASCII, EBCDIC),Veri dönüşümü (Integer-Floating point), veri sıkıştırma, veri şifreleme 5. Katman (Oturum – Session) Gönderici ile alıcı bilgisayar arasında bir bağlantının kurulduğu, yönetildiği ve sonlandırıldığı katmandır. 4. Katman (İletim – Transport) Verilerin hatasız, sırayla, kayıpsız ya da tekrarsız şekilde iletimi ile ilgilenilen katman. Verinin kısımlara ayrılması (segment), veri iletimi kontrolü, veri trafiği kontrolü 3. Katman (Ağ – Network) Verinin hangi fiziksel yolla ve hangi öncelikte hedefe varacağının belirlendiği katmandır. Yönlendirme (routing), verinin paketlere (packet) ayrılması 2. Katman ( Veri Bağı – Data Link) Verinin hatasız olarak fiziksel katman üzerinden bir düğümden diğer düğüme iletildiği katmandır. Verinin çerçevelere(frame) ayrılması, çerçeve trafiği yönetimi, MAC yönetimi 1. Katman ( Fiziksel – Physical) Fiziksel ortam üzerinden bir dizilerinin gönderilip alınması işlemlerinin gerçekleştiği katmandır. Veri içeriği ile ilgilenilmez.
Bilginin Üç Temel Özelliği Erişilebilirlik (Availability) Bilgi yetkili kullanıcı için istediği zaman erişilebilir olmalıdır. Bütünlük (Integrity) Bilgi yalnızca yetkili kullanıcı tarafından değiştirilebilir olmalıdır. Gizlilik (Confidentiality) Bilgiyi yalnızca yetkili kullanıcı görebilmelidir. Erişebilirlik Up-time, Down-time Bütünlük Veri ve bilgi değerlidir. Copyright, Patent, Gizli Formül, Müşteri Veritabanı Sabotaj ve veri bozulması önemli bir tehdittir. Gizlilik Bireylere ait bilgiler (Tıbbi kayıtlar, mal varlıkları) İşletmelere ait varlıklar (Patent, Özel formüller) Ülkelerin ulusal güvenliğine ilişkin bilgiler
IT Altyapısı Güvenlik Katmanları Kullanıcı İş İstasyonu LAN LAN-WAN WAN Uzak Erişim Sistem ve Uygulama Bilgi/Bilişim sistemi altyapısı tipik olarak 7 katmanlı güvenlik gerektirir Her bir katman bilgiye ilişkin erişilebilirlik, bütünlük ve gizlilik gereksinimlerini karşılayacak güvenlik kontrollerine sahip olmalıdır.
Bilgi Güvenliğine İlişkin Tanımlar Yönerge(Policy) Bilginin korunmasına yönelik olarak güvenlik açıkları, sorumluluklar, korunacak bilginin mahiyeti ve yapılması gerekenleri içeren ifade. Yönerge, kanun ve yönetmeliklere uygun olmalıdır. Microsoft AUP - Çevrimiçi HizmetlerMicrosoft AUP - Çevrimiçi Hizmetler Standart (Standard) Belli bir teknoloji, donanım ve yazılım ya da bunlarla ilgili uygulamalarda desteklemesi gereken asgari özellikleri içeren belge. Şifre uzunluğu en az 8 olmalı, en az 1 büyük harf, 1 küçük harf ve 1 özel karakter içermelidir. Kılavuz (Guideline) Belli işlemlerin nasıl yapılacağı ile ilgili olarak uygulayıcılara yardımcı olacak tavsiyeleri içeren belge. Şifrenizi 3 ayda bir değiştiriniz. Prosedür (Procedure) Yönerge, standart ve kılavuzların uygulamalarını adım adım ve detaylı şekilde içeren belge. Microsoft Windows 10 - Şifre SıfırlamaMicrosoft Windows 10 - Şifre Sıfırlama Protokol (Protocol) Bilgisayar ya da ağa bağlı diğer cihazlar arasında veri iletimi yapabilmek için gereksinimleri tanımlayan kurallar topluluğu. FTP, HTTP, TCP/IP Hizmet Sözleşmesi ( Servis Level Agreement – SLA) Bir hizmetin veriliş şartlarının ne olduğunu tanımlayan ve müşteri ile servis sağlayıcı tarafından karşılıklı olarak imzalanan belge. Microsoft Office Hizmet SözleşmesiMicrosoft Office Hizmet Sözleşmesi
Risk, Tehdit, Açık Bilgi sistemlerinin nasıl güvenli hale getirilebileceğini anlayabilmek için öncelikle risk, tehdit (threat) ve açık (vulnerability) kavramlarını anlamak gerekir. Risk : Eldeki varlıklardan birine ya da bazılarına zarar gelme ihtimalidir. Bilgisayar, Veritabanı, Özel bir bilgi Muhtemel Riskler Veri kaybı İş kaybı ( İşyeri binasının fiziksel olarak hasar görmesi ) Yönetmelik ve kanunlara uyumsuzluktan dolayı ceza alma
Risk, Tehdit, Açık Tehdit : Eldeki varlıklardan birine ya da bazılarına zarar verebilecek eylem. Muhtemel Tehditler Doğal tehditler İnsan kaynaklı tehditler Zararlı yazılımlar, yetkisiz erişim Açık : Bir tehdidin gerçekleşmesini ya da varlıklara zarar vermesine imkan tanıyan zayıf taraf. Yazılım açıkları Ağ sistemindeki açıklar Fiziksel güvenlik zaafiyetleri
Yaygın Güvenlik Tehditleri Zararlı yazılım (Malicious Software) Donanım veya yazılım hatası (Hardware or Software Failure) İç Saldırgan (Internal Attacker) Ekipman hırsızlığı (Equipment Theft) Harici Saldırgan (External Attacker) Doğal Afet (Natural Disaster) Endüstriyel Casusluk (Industrial Espionage) Terörizm (Terrorism)
Bilişim Sistemi Güvenlik Alanlarında Potansiyel Hedefler LAN WAN Alanı HTTP, E-posta ve Terminal sunucuları, Router ve Firewall’ler WAN Alanı Router, Gateaway, Switch’ler Uzak Erişim Alanı VPN ve VPN yazılımları Sistem / Uygulama Alanı İstemci işletim sistemleri, ERP Uygulamaları, Web Tarayıcıları Kullanıcı Alanı Bilgisayarlar, Akıllı Telefonlar, Uygulama Yazılımları İş İstasyonu Alanı İş İstasyonları, Sunucular, İşletim Sistemi Yazılımları LAN Alanı Dosya, E-posta, Veritabanı, Kablosuz Yerel Ağ sunucuları, Hub, Repeater ve Bridge’ler
Engelleme ve Yok Etme Tehditleri Varlıkları ve kaynakları erişilemez veya kullanılamaz hale getiren tehditlerdir. Bilginin erişilebilirlik özelliğine tehdittir. Yetkili kullanıcının erişebilirliğini geçici yada kalıcı olarak engelleyebilir. Örnek - Denial of service (DoS) Saldırıları Kullanıcının bilgisayar ya da ağ kaynaklarına erişmesini engelleyen saldırıdır. Cevaplama süresinin uzun olması her zaman DoS saldırısına işaret etmez. Ağ kaynaklarını olması gerekenden daha fazla kullanıcının paylaştığı durumlar Bant genişliğinin bilinçli ve programlı bir şekilde azaltıldığı durumlar
Değiştirme Tehditleri Değiştirme tehditleri bilginin bütünlük özelliğini ihlal eder. Değişiklik, oluşturma, değiştirme, silme şeklinde olabilir. Değiştirme bilginin kaynağında ya da taşınırken gerçekleştirilebilir. Sistem konfigürasyonunda yapılan değişiklikler bütünlüğü bozabilir. Veritabanı, işletim sistemleri, yazılım, donanım Risk azaltmak için Değişikliklerin planlı olarak ve yetkili kurumlar tarafından yapılmalı Veri yedeklemesi çözümleri uygulanmalı
İfşa Etme Tehditleri Ağ kaynağındaki özel ve gizli bilgilere yetkisiz kullanıcılar tarafından erişilmesi durumudur. Saldırganların kullandığı yollar: Sabotaj Espiyonaj Kişilik haklarının ihlaline yol açar ve hukuki sonuçlar doğurabilir. Bilgi güvenliği uzmanları en çok zaman ve çabayı bu tür tehditleri ortadan kaldırmak üzere harcarlar.
Zararlı Saldırı Tipleri Brute-force attacks Saldırgan bir bilgisayar yazılımı ile giriş yapabilene kadar farklı şifreler dener. Dictionary threats Bu saldırıda bir sözlükteki kelimeler alınarak şifre girişi için kullanılır. Şifre oluşturma kuralları kullanmak bu saldırıyı büyük olasılıkla ortadan kaldırır. Address spoofing Bir kullanıcı ya da yazılımın farklı bir kimlikle bir kaynağa erişim kazanmasıdır. Hijacking İki kaynak arasındaki oturumu ele geçirme ve kendisini bu oturumun taraflarından birisi olarak gösterme saldırısıdır. Replay attacks Bu saldırı tipinde, ağdaki veri paketleri yakalanıp tekrar kaynağa gönderilir. Man-in-the-middle attacks İki uç arasındaki trafik engellenerek başka bir yere yönlendirilir. Masquerading Başka bir kullanıcı gibi görünerek erişim kontrol bilgilerini içeren paketleri yakalayıp sonradan kullanma esasına dayanır. Eavesdropping Ağa giren paketleri filtrelemeyen sistemlerde ağın belli bir segmenti üzerinden geçen tüm paketleri yakalama sürecidir. Social engineering Yetkili kullanıcıların, yetkisiz kullanıcılar için işlem yapmasıyla gerçekleşir. İş alımlarında detaylı kriminal geçmiş araştırması yapma riski azaltabilir. Phishing Güvenilir bir kaynaktan geliyormuş gibi düzenlenen mesajlar yoluyla kullanıcıların aldatılmasına dayanır. Phreaking Mevcut güvenlik önlemleri ve kullanılan donanımlar bu tip saldırıları önemli ölçüde ortadan kaldırmıştır. Pharming DNS sunucusuna yapılan saldırı sonucunda, kullanıcının kendi istediği yerine saldırganın yönlendirdiği siteye erişmesidir.
Saldırı Araçları Zayıf Taraf Tarayıcılar (Vulnerability scanners) Hangi tip saldırının daha uygun olacağını belirlemek amacıyla kullanılır. Port tarayıcılar (Port scanners) Hedef olmamak için kullanılmayan portların kapatılması gerekir. Ağ dinleyiciler (Sniffers) Ağ dinleyici bir ağdaki trafiği yakalamayı sağlayan yazılım ve/veya donanımdır. Otomatik Çeviriciler (Wardialers) Mevcut güvenlik sistemleri ve ağ iletişim teknolojilerinden dolayı günümüzde kullanılmamaktadır. Tuş Kaydediciler (Keyloggers) Kullanıcının bastığı tuşların kaydını tutan yazılım ve/veya donanım. Özel bilgilerin metin dosyalarında tutulmaması gerekir.
Bilgi Güvenliğini Sağlayıcı Önlemler Çalışanlar için güvenlik farkındalığı eğitimi Bilgi güvenliği uygulama esasları (yönerge, prosedür, kılavuz) oluşturma Bilgi altyapısı için katmanlı bir güvenlik sistemi oluşturma Periyodik sızma testleri yaptırma Giren/çıkan veri trafiğini izleme Anti-virüs ve zararlı yazılım önleyici çözümler kullanma Kullanıcı adı ve parola dışında farklı erişim kontrolleri kullanma Uygulama yazılım açıklarını minimize etme, bunları güncel tutma Veri sınıflandırma standardı oluşturma ve uygulama Gizli bilgiler için şifreleme teknikleri kullanma Gizli bilgilere erişimi kısıtlama