Ders 05 / 16
Sanal Alan Kullanımı
Sanal alan bir çalıştırma kararı olarak ölçülür: 18 şüpheli kalemin 15'i yalıtımda çalışabiliyor, dört yapılandırma görülen davranışı 23'ten 33'e çıkarıyor, 5 kalem hiçbir yapılandırmada karara bağlanamıyor, yanlış izin ile yanlış engel hiçbir yapılandırmada değişmiyor ve kapatılan tutunma noktası her satırda sıfır.
İçindekiler
Önceki ders bir kalemin çalışıp çalışamayacağına yola ve imzaya bakarak karar verdi; iki ölçüt de kalemin ne yaptığını hiç sormadı ve tam olarak orada kaçıran kalemler bıraktı. Bir kalemin ne yaptığını öğrenmenin tek yolu onu çalıştırmaktır — ama uçta çalıştırmak kararın kendisini gereksiz kılar.
Sanal alan bu çıkmazın karşılığıdır: şüpheli kalem üretim ortamından yalıtılmış bir yerde çalıştırılır ve davranışı gözlenir. Yalıtımın ne kadar güçlü olduğu Bilgi Teknolojileri ve Sistem Temelleri kursunda ölçüldü ve burada girdi olarak alınır. Ölçülen şey yalıtım değil, kararın kendisidir.
Denetim Değil, Karar
Bu dersin sonucu ilk satırda yazılabilir: sanal alan hiçbir tutunma noktasını kapatmaz. Bir açılış girişi, bir servis tanımı ya da bir zamanlanmış görev, sanal alan kurulduktan sonra da kurulmadan önceki hâlindedir. Sanal alanın ürettiği tek şey bir karardır ve o karar başka bir denetime — izin listesine — girdi olur. Kursun iki sütunundan yalnız ikincisine, görünür kılma sütununa yazılır ve bu ders o sütunun en saf örneğidir.
Kararın üç değeri vardır. Engelle: gözlemde belirleyici bir davranış görüldü. İzin: kalemin bütün davranışları görüldü ve hiçbiri belirleyici değildi. Belirsiz: kalem çalıştı ama en az bir davranış görülemedi, dolayısıyla görülmemiş olması yokluk anlamına gelmiyor. Üçüncü değer bu dersin asıl konusudur; iki değerli bir karar tablosu belirsizi ikinciye katar ve ölçüm bozulur.
Şüpheli bir kalem çalıştırıldığında dışarıya bağlantı kurmayı deneyebilir; sanal alanın denetimli ağı gerçek bir hedefe ulaşmamalıdır ve başka bir kuruma ait bir kalemin incelenmesi yazılı yetki ve tanımlı kapsam olmadan hem yasadışı hem meslek dışıdır.
- SS25. On sekiz kalemlik kuyruk, sekiz davranış sınıfı ve dört yapılandırma modeldir; gerçek bir kalem çalıştırılmıyor. Şüpheli kalemler yalnız tür ve gözlenen davranış sınıfıyla anılır; ne oldukları ve nasıl geldikleri yazılmaz.
- SS26. Yalıtımın gücü burada ölçülmüyor, girdi olarak alınıyor.
- SS27. Bir davranışın görünmesi tek bir ortam koşuluna bağlı sayılır. Gerçekte bir davranış birden çok koşul isteyebilir; bu, görülmeyen sütununu büyütür.
- SS28. Kalemin çalışabilmesi tek bir zorunlu koşula bağlıdır; koşul sağlanmazsa kalem hiç çalıştırılamaz.
- SS29. Gözlem penceresi ve elle inceleme süreleri elle yazıldı; rastgelelik yok.
- SS30. Belirleyici işareti davranışa aittir, kaleme değil. Aynı davranış meşru bir kalemde de görülebilir ve model bunu böyle işaretledi.
// alan/kuyruk.mjs — sanal alanda calistirma karari MODELIDIR. Gercek bir kalem calistirilmaz; // supheli kalemler yalniz tur ve gozlenen davranis sinifiyla anilir. // Bir davranisin gorunmesi, ortam kosulunun sanal alanda saglanmasina baglidir. export const DAVRANIS = { 'dosya-yazma': '-', 'surec-olusturma': '-', 'kalicilik-tanimi': '-', 'ag-baglantisi': 'ag', 'kimlik-bilgisi-okuma': 'alan-kimligi', 'zamanlanmis-tetik': 'uzun-sure', 'kullanici-eylemi': 'kullanici-etkilesimi', 'cihaz-erisimi': 'ozgun-donanim', }; // Yapilandirma: sagladigi ortam kosullari, gozlem penceresi (dk), operator gerektiriyor mu. export const YAPI = { yalitik: { saglar: [], pencere: 5, operator: false }, 'denetimli-ag': { saglar: ['ag'], pencere: 5, operator: false }, 'uzun-pencere': { saglar: ['ag', 'uzun-sure'], pencere: 60, operator: false }, etkilesimli: { saglar: ['ag', 'uzun-sure', 'kullanici-etkilesimi'], pencere: 60, operator: true }, }; export const ELLE_DK = 25; // belirsiz kalem basina elle inceleme suresi // satir: ad | tur | calismasi icin zorunlu kosul | gercek | davranislar ('*' belirleyici) export const KALEM = ` tanilama-araci ikili - mesru dosya-yazma,surec-olusturma yeni-surum-yukleyici ikili - mesru dosya-yazma,ag-baglantisi,*kalicilik-tanimi ic-yardimci-arac ikili - mesru dosya-yazma,surec-olusturma,ag-baglantisi sayac-okuma-araci ikili ozgun-donanim mesru cihaz-erisimi,dosya-yazma saha-kurulum-betigi betik - mesru dosya-yazma,*kalicilik-tanimi,kullanici-eylemi ceyrek-raporu-betigi betik - mesru dosya-yazma,ag-baglantisi ic-rapor-araci ikili - mesru dosya-yazma,ag-baglantisi yeni-belge-sablonu belge - mesru dosya-yazma,kullanici-eylemi tedarikci-arsivi arsiv - mesru dosya-yazma,surec-olusturma alan-yonetim-betigi betik alan-kimligi mesru ag-baglantisi,*kimlik-bilgisi-okuma supheli-kalem-1 ikili - kotu dosya-yazma,surec-olusturma,*kalicilik-tanimi supheli-kalem-2 betik - kotu dosya-yazma,ag-baglantisi,*kimlik-bilgisi-okuma supheli-kalem-3 ikili - kotu dosya-yazma,*zamanlanmis-tetik supheli-kalem-4 ikili - kotu surec-olusturma,*kimlik-bilgisi-okuma supheli-kalem-5 belge - kotu dosya-yazma,*kullanici-eylemi supheli-kalem-6 ikili - kotu dosya-yazma,surec-olusturma supheli-kalem-7 arsiv - kotu dosya-yazma,*ag-baglantisi supheli-kalem-8 ikili ozgun-donanim kotu dosya-yazma,*cihaz-erisimi` .trim().split('\n').map((r) => { const [ad, tur, zorunlu, gercek, dav] = r.trim().split(/\s+/); return { ad, tur, zorunlu, kotu: gercek === 'kotu', davranis: dav.split(',').map((d) => ({ ad: d.replace('*', ''), belirleyici: d.startsWith('*') })) }; }); export const kosul = (d) => DAVRANIS[d.ad]; export const gorunur = (d, y) => kosul(d) === '-' || YAPI[y].saglar.includes(kosul(d)); export const calisir = (k, y) => k.zorunlu === '-' || YAPI[y].saglar.includes(k.zorunlu); // Bir kalemin bir yapilandirmadaki karari: engelle | izin | belirsiz | calismadi export function karar(k, y) { if (!calisir(k, y)) return 'calismadi'; const gorulen = k.davranis.filter((d) => gorunur(d, y)); if (gorulen.some((d) => d.belirleyici)) return 'engelle'; return gorulen.length === k.davranis.length ? 'izin' : 'belirsiz'; } export function tara(y) { const s = { calisan: 0, calismayan: 0, gorulen: 0, gorulmeyen: 0, engelle: 0, izin: 0, belirsiz: 0, yanlisIzin: 0, yanlisEngel: 0 }; for (const k of KALEM) { const kr = karar(k, y); if (kr === 'calismadi') { s.calismayan += 1; continue; } s.calisan += 1; s.gorulen += k.davranis.filter((d) => gorunur(d, y)).length; s.gorulmeyen += k.davranis.filter((d) => !gorunur(d, y)).length; s[kr] += 1; if (kr === 'izin' && k.kotu) s.yanlisIzin += 1; if (kr === 'engelle' && !k.kotu) s.yanlisEngel += 1; } s.gozlemDk = s.calisan * YAPI[y].pencere; s.operatorDk = YAPI[y].operator ? s.gozlemDk : 0; s.elleDk = (s.belirsiz + s.calismayan) * ELLE_DK; return s; }
Dört Yapılandırma, Aynı Kuyruk
// alan/olc.mjs — dort sanal alan yapilandirmasi ayni supheli kalem kuyrugunda degerlendirilir import { DAVRANIS, YAPI, KALEM, ELLE_DK, kosul, gorunur, calisir, karar, tara } from './kuyruk.mjs'; const y = (g, ...s) => console.log(s.map((v, i) => (g[i] < 0 ? String(v).padEnd(-g[i]) : String(v).padStart(g[i]))).join('').trimEnd()); const hicSaglanmaz = [...new Set(Object.values(DAVRANIS))] .filter((c) => c !== '-' && !Object.values(YAPI).some((v) => v.saglar.includes(c))); console.log(`${KALEM.length} supheli kalem, ${KALEM.filter((k) => k.kotu).length} tanesi kotu; ` + `${Object.keys(DAVRANIS).length} davranis sinifi, ${Object.keys(YAPI).length} yapilandirma`); console.log(`hicbir yapilandirmada saglanamayan kosul: ${hicSaglanmaz.join(', ')}`); const A = [-14, 9, 12, 10, 12, 9, 7, 10, 13, 14]; console.log('\n1. yapilandirma basina sonuc'); y(A, 'yapilandirma', 'calisan', 'calismayan', 'gorulen', 'gorulmeyen', 'engelle', 'izin', 'belirsiz', 'yanlis izin', 'yanlis engel'); for (const yp of Object.keys(YAPI)) { const s = tara(yp); y(A, yp, s.calisan, s.calismayan, s.gorulen, s.gorulmeyen, s.engelle, s.izin, s.belirsiz, s.yanlisIzin, s.yanlisEngel); } const B = [-22, 8, 14, 14, 14, 14]; console.log('\n2. kalem basina karar'); y(B, 'kalem', 'gercek', ...Object.keys(YAPI)); for (const k of KALEM) y(B, k.ad, k.kotu ? 'kotu' : 'mesru', ...Object.keys(YAPI).map((yp) => karar(k, yp))); const C = [-14, 9, 11, 13, 9, 11, 15]; console.log('\n3. karar suresi (dk) ve kapanan tutunma noktasi'); y(C, 'yapilandirma', 'pencere', 'gozlem dk', 'operator dk', 'elle dk', 'toplam dk', 'kapanan nokta'); for (const yp of Object.keys(YAPI)) { const s = tara(yp); y(C, yp, YAPI[yp].pencere, s.gozlemDk, s.operatorDk, s.elleDk, s.gozlemDk + s.operatorDk + s.elleDk, 0); } const u = tara('uzun-pencere'), e = tara('etkilesimli'); console.log(`\nelle incelemeye dusen kalem (uzun-pencere) ${u.belirsiz + u.calismayan} / ${KALEM.length}`); console.log(`hicbir yapilandirmada karara baglanamayan ${e.belirsiz + e.calismayan} / ${KALEM.length}`); console.log(` bunlarin kotu olani ` + `${KALEM.filter((k) => k.kotu && karar(k, 'etkilesimli') !== 'engelle').length}`); console.log(`her yapilandirmada yanlis izin / yanlis engel ${e.yanlisIzin} / ${e.yanlisEngel}`); console.log(`elle inceleme suresi ${ELLE_DK} dk/kalem`);
18 supheli kalem, 8 tanesi kotu; 8 davranis sinifi, 4 yapilandirma hicbir yapilandirmada saglanamayan kosul: alan-kimligi, ozgun-donanim 1. yapilandirma basina sonuc yapilandirma calisan calismayan gorulen gorulmeyen engelle izin belirsiz yanlis izin yanlis engel yalitik 15 3 23 12 3 3 9 1 2 denetimli-ag 15 3 29 6 4 6 5 1 2 uzun-pencere 15 3 30 5 5 6 4 1 2 etkilesimli 15 3 33 2 6 7 2 1 2 2. kalem basina karar kalem gercek yalitik denetimli-ag uzun-pencere etkilesimli tanilama-araci mesru izin izin izin izin yeni-surum-yukleyici mesru engelle engelle engelle engelle ic-yardimci-arac mesru belirsiz izin izin izin sayac-okuma-araci mesru calismadi calismadi calismadi calismadi saha-kurulum-betigi mesru engelle engelle engelle engelle ceyrek-raporu-betigi mesru belirsiz izin izin izin ic-rapor-araci mesru belirsiz izin izin izin yeni-belge-sablonu mesru belirsiz belirsiz belirsiz izin tedarikci-arsivi mesru izin izin izin izin alan-yonetim-betigi mesru calismadi calismadi calismadi calismadi supheli-kalem-1 kotu engelle engelle engelle engelle supheli-kalem-2 kotu belirsiz belirsiz belirsiz belirsiz supheli-kalem-3 kotu belirsiz belirsiz engelle engelle supheli-kalem-4 kotu belirsiz belirsiz belirsiz belirsiz supheli-kalem-5 kotu belirsiz belirsiz belirsiz engelle supheli-kalem-6 kotu izin izin izin izin supheli-kalem-7 kotu belirsiz engelle engelle engelle supheli-kalem-8 kotu calismadi calismadi calismadi calismadi 3. karar suresi (dk) ve kapanan tutunma noktasi yapilandirma pencere gozlem dk operator dk elle dk toplam dk kapanan nokta yalitik 5 75 0 300 375 0 denetimli-ag 5 75 0 200 275 0 uzun-pencere 60 900 0 175 1075 0 etkilesimli 60 900 900 125 1925 0 elle incelemeye dusen kalem (uzun-pencere) 7 / 18 hicbir yapilandirmada karara baglanamayan 5 / 18 bunlarin kotu olani 4 her yapilandirmada yanlis izin / yanlis engel 1 / 2 elle inceleme suresi 25 dk/kalem
Görülen ve Görülmeyen Davranış
On sekiz kalemin 15’i çalıştırılabiliyor, 3’ü hiç çalıştırılamıyor. Çalıştırılamayanların ikisi özgün donanım isteyen kalemler — sayaç okuma aracı ve şüpheli bir ikili — biri de alan kimliği isteyen bir yönetim betiği. Sanal alan bu üç kalem hakkında hiçbir şey söylemez; kuyruğun altıda biri, henüz hiçbir gözlem yapılmadan elle incelemeye düşer.
Yalıtımı gevşetmek görülen davranışı artırıyor: 23’ten 33’e, görülmeyen 12’den 2’ye. Ama gevşetilen şey tam olarak yalıtımın kendisidir. Denetimli ağ eklenmesi altı davranışı daha görünür kılıyor; gözlem penceresinin beş dakikadan altmış dakikaya çıkarılması yalnız bir davranış ekliyor; operatör etkileşimi üç davranış ekliyor. Kazanç birbirine eşit değil ve maliyetleri de değil.
İki koşul hiçbir yapılandırmada sağlanmıyor: alan kimliği ve özgün donanım. Birincisi sağlanamaz, çünkü sanal alana gerçek bir alan kimliği vermek yalıtımı ortadan kaldırır — o kimlikle erişilebilecek her şey sanal alanın içine girer. İkincisi sağlanamaz, çünkü donanım orada yoktur. Bu iki koşul bir yapılandırma eksikliği değil, yöntemin sınırıdır: sanal alan üretim ortamının kendisi olmadığı sürece üretim ortamına bağlı davranışlar görünmez, üretim ortamının kendisi olduğunda ise sanal alan olmaktan çıkar.
Kararsız Kalan Kalem
İkinci tablo kararların yapılandırmadan yapılandırmaya nasıl değiştiğini gösteriyor. Yalıtık yapılandırmada 15 çalışan kalemin 9’u belirsiz kalıyor; en yetenekli yapılandırmada bu sayı 2’ye iniyor. Ama üç değer aynı kalıyor: yanlış izin 1, yanlış engel 2 ve çalıştırılamayan kalem 3.
Yanlış izin tek bir kalemdedir ve hiçbir yapılandırmada düzelmiyor. O kalemin bütün davranışları gözlemde görünüyor — dosya yazma ve süreç oluşturma — ve hiçbiri belirleyici değil. Gözlem penceresini uzatmak, ağ eklemek ya da operatör oturtmak bu kalemde bir şey değiştirmez, çünkü eksik olan gözlem değil ayrımın kendisidir. Bir kalemin sanal alandaki davranışı meşru bir kalemden ayırt edilemiyorsa sanal alan o kalem hakkında karar üretemez.
Yanlış engel iki kalemdedir ve nedeni aynıdır, tersinden. Yeni sürüm yükleyicisi ile saha kurulum betiği bir kalıcılık tanımı yazıyor — bu kursun ölçtüğü şeyin ta kendisi, bir tutunma noktası tanımı. Belirleyici davranış görülüyor ve karar “engelle” oluyor. İkisi de meşru işlerdir. Sanal alan davranışı görür, kimin hangi yetkiyle yaptığını görmez; kurulum sırasında kalıcılık tanımı yazmak bir yükleyicinin işidir.
Beş kalem hiçbir yapılandırmada karara bağlanamıyor ve dördü kötü. İkisi çalıştırılamayan kalemlerden, ikisi alan kimliği isteyen davranışı olan kalemlerden geliyor. Kuyruğun sekiz kötü kaleminin yalnız dördü sanal alanla durduruluyor; kalan dördü için sanal alan bir yanıt üretmiyor, yalnız soruyu elle incelemeye devrediyor.
Kararın Süresi
Üçüncü tablo bedeli veriyor ve tek yönlü değil. Gözlem süresi yalıtık yapılandırmada 75 dakika, uzun pencerede 900. Elle inceleme süresi ise ters yönde gidiyor: 300 dakikadan 125’e. İkisi toplandığında en ucuz yapılandırma denetimli ağ oluyor — 275 dakika — ve en pahalısı etkileşimli, 1925 dakika. Aradaki fark yedi kattan fazla ve karşılığında belirsiz kalem 5’ten 2’ye iniyor, yanlış kararlar hiç değişmiyor.
Bu, kararın nerede duracağını belirleyen sayıdır. Beş dakikalık pencereye denetimli ağ eklemek görülen davranışı 23’ten 29’a çıkarıyor ve toplam süreyi 375’ten 275’e düşürüyor, çünkü elle incelemeye düşen kalem azalıyor. Pencereyi altmış dakikaya çıkarmak ise bir tek davranış kazandırıp süreyi dört kat artırıyor. Ucuz olan adım ağın eklenmesidir; pahalı olan sürenin uzatılmasıdır.
Tabloda görünmeyen bir bedel daha var: sanal alanın kendisi bakım ister. Gözlemin işe yaraması için ortam üretimdeki uçlara benzemelidir — aynı yazılım kümesi, aynı sürümler, aynı yapılandırma — ve benzedikçe yalıtım azalır. Uçlardaki taban çizgi her değiştiğinde sanal alan görüntüsünün de güncellenmesi gerekir; güncellenmediğinde kalem, çalıştığı ortamı tanımadığı için hiçbir davranış göstermeyebilir ve karar sessizce “izin”e kayar. Buna sanal alanı işleten makinelerin kendi envanteri eklenir: onlar da birer uçtur ve bu kursun ilk dersindeki sayıma girer.
Son sütun bütün satırlarda sıfır. Bir yapılandırmadan ötekine kaç davranış daha görülürse görülsün, kapatılan tutunma noktası sayısı değişmiyor. Sanal alanın ürettiği karar izin listesine bir satır ekler ya da eklemez; noktayı kapatan şey o satırdır, sanal alan değil.
Özet
- Sanal alan bir denetim değil bir çalıştırma kararıdır: dört yapılandırmanın hepsinde kapatılan tutunma noktası sıfırdır. Ürettiği karar izin listesine girdi olur ve nokta orada kapanır.
- Karar üç değerlidir; belirsiz değeri ayrı tutulmazsa ölçüm bozulur. Yalıtık yapılandırmada çalışan 15 kalemin 9’u belirsiz, en yetenekli yapılandırmada 2’si.
- İki ortam koşulu hiçbir yapılandırmada sağlanamaz — alan kimliği ve özgün donanım. Birincisi sağlandığında yalıtım ortadan kalkar; bu bir eksiklik değil, yöntemin sınırıdır.
- Yanlış izin (1) ve yanlış engel (2) hiçbir yapılandırmada değişmez. Yanlış engelin nedeni, meşru bir yükleyicinin de bir kalıcılık tanımı yazmasıdır: sanal alan davranışı görür, yetkiyi görmez.
- Sekiz kötü kalemin yalnız dördü sanal alanla durdurulur; dördü karara bağlanamaz ve elle incelemeye devredilir.
- Süre iki yönlü çalışır: denetimli ağ eklemek toplam süreyi 375 dakikadan 275’e düşürür, pencereyi altmış dakikaya çıkarmak bir davranış kazandırıp süreyi 1075 dakikaya taşır.
Sonraki Adım
Buraya kadar sayılan her şey makine açıkken ve bir işletim sistemi çalışırken geçerliydi. Envanter o sistemin içinden çıkarıldı, izin listesi o sistemin çalıştırma kararlarını denetledi, sanal alan bir kalemi o sistemin bir kopyasında koşturdu. Hepsinin ortak varsayımı, makineye erişmenin tek yolunun çalışan sistemden geçmesidir.
Sonraki ders bu varsayımı kaldırır. Disk makineden çıkarılıp başka bir yere takıldığında çalışan sistem devreden çıkar ve onunla birlikte bütün denetimler düşer: izin listesi değerlendirme yapmaz, sertleştirme taban çizgisi okunmaz, hiçbir kayıt tutulmaz. Ölçülecek olan şudur: şifrelenmemiş ve şifrelenmiş diskte fiziksel erişimle kaç kalem okunabiliyor, tam disk şifreleme hangi tutunma noktası sınıfını kapatıyor ve makine açıkken, oturum açıkken ya da ekran kilitliyken şifrelemenin neyi korumadığı kalem kalem nedir. Konu bu ölçümle kapanır.
İlerlemeni kaydetmek ve not almak için Giriş yap
Notlarım
Not almak için giriş yapmalısın.