Bilgisayar Bilimi-2 (Windows 101)

Bilgisayar Bilimi-1 isimli blog yazıımda bilgisyarlardan, bilgisyar tarihinden genel çalışma mantalitesinden bahsettim. Bu blog yazımda günümüzde nerdeyse hergün karşılaştığımız Windows işletim sistemi hakkında temel bilgiler, Windows işletim sisteminde karşımıza çıkan dosya uzantılarına ve neden kullanıldıklarından bahsedeceğim.



Windows:

 Windows Microsoft tarafından üretilmiş bir işletim sistemidir.

Windowsun dezavantajları:

·       Windows veritabanı sunuculuğu gibi bazı sunucularda yavaşlama görülmektedir.

·       Widows işletim sistemin kitlenmesi ve yeniden başlatılmasına neden olan bazı sorunlar oluşabilmektedir.

·       Linux’a göre daha fazla kaynak tüketimi olması

Windows 10 2015’te piyasaya sürülen en sonra işletim sistemi sürümüdür.

Windows çekirdek olarak NTçekirdeğini kullanır. NT, New Technology sözünün kısaltılması olarak kullanılıyor, Windows 2000 den sonra NT kısaltılması isimlerde kaldırıldı ancak ürün sürümlerinde kullanılmaya devam etti. Windows NT çekirdeği Hybrid Kernel yapısına sahiptir.

Hybrid Kernel (Hibrit çekirdek, melez çekirdek) bilgisayar işletim sistemlerinde kullanılan mikro çekirdek ve monolitik çekirdek mimarilerinin özelliklerini ve faydalarını birleştirmeye çalışan bir işletim sistemi çekirdek mimarisidir.

Windows NT’nin mimarisi, kullanıcı kod (user mod) ve çekirdek mod (kernel mod) olmak üzere iki ana bileşenden oluşan katmanlı bir tasarımdır. Tek işlemcil ve simetrik çok işlemcil (SMP) tabanlı bilgisayarlarda çalışmak üzere tasarlanmış önleyici, yeniden  gelen bir işletim sistemidir.

Çekirdek modu, sistem belleğine ve harici aygıtlara sınırsız erişime sahipken, kullanıcı modundaki programlar ve alt sistemler erişebildikleri sistem kaynaklarına göre sınırlıdır. Windows NT çekirdeği karma çekirdek olarak bilinir. Kullanıcı modu G/Ç yöneticisini kullanarak G/Ç isteklerini uygun çekirdek modu aygıt sürücülerine aktarabilen alt sistemlerden oluşur. Windows NT kullanıcı modu katmanı, bir çok farklı işletim sistemi türü için yazılmış uygulamaları çalıştıran “çevre alt sistem” ve çevre alt sistemleri adına sisteme özgü işlevler çalıştıran “bütünleşik alt sistem” den oluşur. 

Kullanıcı modu, çeşitli sistem tanımlı süreçler ve DLL’lerden oluşur. Kullanıcı modu, uygulamaları ile iletişim sistemi çekirdeği işlevleri arasında arabirime “çevre alarm sistemi” adı verilir. Windows NT, bunların her biri farklı işletim sistemi türü için yazılmış uygulamaları desteklemek üzere tasarlanmıştır. Hiçbir çevre alt sistemi doğrudan donanıma erişemez, donanım işlevlerine erişim çekirdek modu rutinlerini arayarak yapılır.

Process

Bilgisayar biliminde process, belleğe yüklenmiş ve işlemcide (CPU) yürütülmekte olan bir program olarak tanımlanmaktadır. Uygulamalar diskte çalışmaz halde bulunurken ise program olarak tanımlanır. Bir program (yürütülebilir dosya .exe) kendi başına pasif komut yığınıdır ve process ise bu komutların aktif olarak yürütülmesidir. Porcess (işlem) bilgisayarda çalışan programdır. Sisteme girş yapan bir girdiyi sistemden geçirerek çıktıya dönüştüren. Procces’lerede süreç yaklaşımı da denilmektedir.

Eski bilgisayar sistemlerinde sadece bir program hafızaya yüklenip işlemcide yürütlmesine izin vermekteydi ve bütün sistem kaynaklarının erişimi bu yürütülmekte olan programın kontrolü altındaydı, günümüzde bilgisayar sistemleri ise bir çok programı aynı anda belleğe yüklemesine ve art arda işlemcide yürütülmesine olanak sağlamaktadır.

 

Process; Execution’daki bir programdır. Bilgisayarda çalışan bir programın kopyasıdır, işlemciye atanabilen ve işlemcide çalıştırılabilen bir varlıktır gibi tanımlar yapılabilir.

Execution bir süreç olarak işleme tabi tutma anlamına gelmektedir run ifadesi çalıştırılma anlamını ifade eder karıştırılmamalıdır.

Procerss Concept (yapısı)’ı şöyledir;

Process, Stack, Heap, data ve text alanlarından oluşmaktadır. Stack daha küçük adreslere doğru büyürken heap daha büyük adresler doğru büyümektedir

Text: derlenen programın (process)’in makine kodu bu alanda bulunmakta

Data: Bu alan iste static verilerin tutulduğu yer. Starci verilere ise global değişkenler örnek verilebilir.

Heap: Bu alan dinamik olarak tahsis edilmiş bellek alanları bulunur.

Stack: Fonksiyon parametreleri ve lokal değişkenlerde bu alanda bulunmakta yani geçici verinin tutulduğu yerdir.

 

Windows’ta sık karşılaşılan bilinmesi gerek dosya türleri;

Windows dosya adlarını nokta ile iki kısma ayırmıştır noktanın sağ tarafı dosya uzantısı 3 vey 4 karakterden oluşmaktadır, sol tarafı ise bizim dosyaya verdiğimiz adlardan oluşur. Uzantılar bilgisayarın hangi uygulamayı kullanarak çalıştıracağını/oluşturduğunu söyler. Örneğin docx microsft Word tarafından oluşturduğunu ve microsft word’ün açabildiğini bildirir. Dosya uzantısı manuel bir şekilde değiştirilişe dosyanın formatı değişmez

Uzantı

Biçim

aac, adt, adts

Windows ses dosyası

accdb

Microsoft Access veritabanı dosyası

accde

Microsoft Access yalnızca yürütme dosyası

accdr

Microsoft Access çalışma zamanı veritabanı

accdt

Microsoft Access veritabanı şablonu

aif, aifc, aiff

Ses Değişim Dosya biçimi dosyası

aspx

ASP.NET Active Server sayfası

avi

Ses Video Birleşimi filmi ya da ses dosyası

bat

Bilgisayar toplu iş dosyası

bin

İkili sıkıştırılmış dosya

bmp

Bit eşlem dosyası

cab

Windows Cabinet dosyası

cda

CD Ses Parçası

csv

Virgülle ayrılmış değerler dosyası

dif

Elektronik tablo veri değişim biçimi dosyası

dll

Dinamik Bağlantı Kitaplığı dosyası

doc

Word 2007’den önceki Microsoft Word belgesi

docm

Makro etkinleştirilmiş Microsoft Word belgesi

docx

Microsoft Word belgesi

dot

Word 2007’den önceki Microsoft Word belgesi

dotx

Microsoft Word şablonu

eml

Outlook Express, Windows Live Mail ve diğer programlar tarafından oluşturulan e-posta dosyası

eps

Encapsulated PostScript dosyası

exe

Yürütülebilir program dosyası

flv

Flash ile uyumlu video dosyası

gif

Grafik Değişim Biçimi dosyası

htm, html

Köprü metni işaretleme dili sayfası

ini

Windows başlatma yapılandırma dosyası

iso

ISO-9660 disk görüntüsü

jar

Java mimari dosyası

jpg, jpeg

Joint Photographic Experts Group fotoğraf dosyası

m4a

MPEG-4 ses dosyası

mdb

Access 2007’den önceki Microsoft Access veritabanı

mid, midi

Musical Instrument Digital Interface dosyası

mov

Apple QuickTime film dosyası

mp3

MPEG katman 3 ses dosyası

mp4

MPEG 4 video

mp4

MPEG 4 video

mpeg

Moving Picture Experts Group film dosyası

mpg

MPEG 1 sistem akışı

msi

Microsoft Installer dosyası

mui

Çok Dilli Kullanıcı Arabirimi dosyası

pdf

Taşınabilir Belge Biçimi dosyası

png

Taşınabilir Ağ Grafikleri dosyası

pot

PowerPoint 2007’den önceki Microsoft PowerPoint şablonu

potm

Makro etkinleştirilmiş Microsoft PowerPoint şablonu

potx

Microsoft PowerPoint şablonu

ppam

Microsoft PowerPoint eklentisi

pps

PowerPoint 2007’den önceki Microsoft PowerPoint slayt gösterisi

ppsm

Makro etkinleştirilmiş Microsoft PowerPoint slayt gösterisi

ppsx

Microsoft PowerPoint slayt gösterisi

ppt

PowerPoint 2007’den önceki Microsoft PowerPoint biçimi

pptm

Makro etkinleştirilmiş Microsoft PowerPoint sunusu

pptx

Microsoft PowerPoint sunusu

psd

Adobe Photoshop dosyası

pst

Outlook veri deposu

pub

Microsoft Publisher dosyası

rar

Sıkıştırılmış Roshal Arşivi dosyası

rtf

Zengin Metin Biçimi dosyası

sldm

Makro etkinleştirilmiş Microsoft PowerPoint slaytı

sldx

Microsoft PowerPoint slaytı

swf

Shockwave Flash dosyası

sys

Microsoft DOS ve Windows sistem ayarları ve değişkenleri dosyası

tif, tiff

Etiketli Resim Biçimi dosyası

tmp

Geçici veri dosyası

txt

Biçimlendirilmemiş metin dosyası

vob

Video nesne dosyası

vsd

Visio 2013’ten önceki Microsoft Visio çizimi

vsdm

Makro etkinleştirilmiş Microsoft Visio çizimi

vsdx

Microsoft Visio çizim dosyası

vss

Visio 2013’ten önceki Microsoft Visio kalıbı

vssm

Makro etkinleştirilmiş Microsoft Visio kalıbı

vst

Visio 2013’ten önceki Microsoft Visio şablonu

vstm

Makro etkinleştirilmiş Microsoft Visio şablonu

vstx

Microsoft Visio şablonu

wav

Dalga ses dosyası

wbk

Microsoft Word yedekleme belgesi

wks

Microsoft Works dosyası

wma

Windows Media Ses dosyası

wmd

Windows Media İndirme dosyası

wmv

Windows Media Video dosyası

wmz, wms

Windows Media dış görünüm dosyası

wpd, wp5

WordPerfect belgesi

xla

Microsoft Excel eklentisi veya makro dosyası

xlam

Excel 2007’den sonraki Microsoft Excel eklentisi

xll

DLL tabanlı Microsoft Excel eklentisi

xlm

Excel 2007’den önceki Microsoft Excel makrosu

xls

Excel 2007’den önceki Microsoft Excel çalışma kitabı

xlsm

Excel 2007’den sonraki makro etkinleştirilmiş Microsoft Excel çalışma kitabı

xlsx

Excel 2007’den sonraki Microsoft Excel çalışma kitabı

xlt

Excel 2007’den önceki Microsoft Excel şablonu

xltm

Excel 2007’den sonraki makro etkinleştirilmiş Microsoft Excel şablonu

xltx

Excel 2007’den sonraki Microsoft Excel şablonu

xps

XML tabanlı belge

sıkıştırma

Sıkıştırılmış dosya

EXE (Executable File Format),çalıştırılabilir dosya formatıdır. Exe bilgisayar programları içerisinde kullanılmaktadır. Exe dosyaları bazen tek başına bir program olurken bazen de bir programın başlangıcı olabilmektedir. Exe dosyaları ya komut satırı yardımıyla ya da çift tıklayarak çalıştırılabilir. Exe dosyalarını editlemek için; Rource hacker, Akala EXE Locki ExeScope, ExeWrapper veya ResEdit Tols yazılımlarından herhangi biri kullanılabilir. Dll dosyaları executable bir uygulama olmaksızın kullnılmazken exe uzantılı uygulama dosyaları bağımsız çalışabilirler.

 

 

 

.bat (batch)

 Bilgisayarda belirli bir sırayla yapılması istenen işlemlerin müdahaleye gerek duyulmadan yapılmasını sağlayan dosyalara verilen isimdir. Bat uzantılı dosyalar windows’un toplu işlem dosyalarıdır. DOS işletim sistemlerinden beri kullanılan scrpit türündeki dosyalardır. bat dosyaları exe uzantılı dosyalara benzer şekilde çalışırlar. Genellikle bilgisayar programcıların gelişmiş fonksiyonlar için kullanılmaktadır. Bat dosyaların amacı, oluşturulan komutların bilgisayarda tek tıklamayla bilgisayara yaptırmaktır.  Bilgisayarda yapılması gereken bir ya da bir dizi işlemi başka hiçbir işleme gerek olmadan ardı ardına yapılmasını sağlar.  Windows komut isteminde, kullanılabilen tüm komutlar BAT dosyaları ile kullanmak mümkündür. Bat dosyaları küçük bir exe dosyası gibi çalışır. bat dosyalarını çeşitli amaçlarla kullanır, örneğin dosyaları kopyalamak veya silmek, uygulamaları çalıştırmak ve işlemleri kapatmak için.

Bat dosyaları herhangi bir metin düzenleyicinin düzenleme için bir .bat dosyasını açabileceği anlamına gelir. Bat dosyasına sağ tık yaparak not defteri yardımıyla açabiliriz.

Örneğin; bir bat dosyası oluşturmak için;

 

Burada ilk olarak www.muhammedaygun.com web sitesini açıp daha sonra ipconfig sorgusunu yaparak duracaktır.

e-posta yoluyla alınan aşina olmadığınız web sitelerinde indirdiğiniz veya hatta kendi oluşturduğunu .bat dosyalarını çalıştırmadan önce dikkat etmelisiniz.

Bat dosyalarının kodu hiçbir şekilde gizli değildir bundan dolayı düzenlenmesi çok kolaydır. Bir bat dosyanın kodu hiçbir şekilde gizli değildir, bu da düzenlemenin çok kolay olmaktadır. Bat dosyasındaki belirli talimatlar del komutu gibi verilere zarar verebileceğinden, BAT dosyasıyla işlem yapılırken dikkat edilmelidir.

 

bin

.bin ikili dosyaların bir uzantısıdır, her dosyanın içinde farklı bilgiler vardır ve bu bilgiler çeşitli amaçlar için olabilir. Bu dosyalar genellikle derlenmiş bilgisayar programlarıdır. Görüntü, ses, video, kurulum veya bir CD/DVD görüntüsü olabilir. Bazı durumlarda bu BIN dosyaları ikili biçimde kaydedilir ve herhangi bir metin düzenleyicisiyle açılır. Bir bin dosyası Sega video oyunlarının bir ROM görüntüsü de olabilir. Bir bin dosyası doğrudan açılmaz dosyayı kullanmak için onu ya bir dikle yazdırman gerekir ya da sanal bir sürücüye okutman gerekir. BIN dosyasını bir iso dosyasına da dönüştürebiliriz böylece onu yazdırmak veya okutmak için çok daha fazla program kullanabiliriz. BIN, dosya uzantısı yaygın olarak sıkıştırılmış arşiv dosyaları olarak programlar tarafından farklı amaçlar için kullanılır. Açılımıyla “Binary” olarak adlandırılan bu dosya türleri genellikle CD veya DVD dosalarının Backup yansıması alındığında veya malware yazılımlarında görebiliriz. Bin dosyaları bilgisayarın içerisindeki farklı yazılımlar tarafından farklı amaçlar için kullanılabilir yani bin dosyaları her zaman sadece sıkıştırılma amacıyla meydana getirilmiş dosyalar olmayabilir. , Bin uzantılı dosyalar ikili dosya ile ilişkili olan dosyalardır. İkili dosyalar geniş yelpazede içerikler için kullanılmaktadır. Bin dosyası bir dosya editörü görevini görmektedir. CD ve DVD’lerin içerisinde yer alan içerikler bin dosyaları olarak bulunmaktadır.

DLL (Dynamic Link Library), Türkçe anlamı dinamik bağlantı kütüphanesidir. DLL dosyaların görevi çalışan programların ortaklaşa yapmış olduğu işlemleri tek bir dosya içinde yapmak, program çalışma esnasında gerekli olan fonksiyonları kendi içerisinde bulunmaz ise bunu dll dosyasında aramaktadır.

Bu şekilde programlar tek bir dosya üzerinde çalışarak bellek kullanımını minimum seviyeye düşürerek ham program hızını ve bilgisayar hızını artıracak bir çok dl dosası yerine tek bir dll dosyası kullandığından hard disk üzerinde fazla yer kaplamayacaktır.

Bir program nasıl çalışmasında bir exe dosyası gerekliyse aynı şekilde bir dll dosyasına aynı şekilde programın çalışmasında gerekli sistem dosyalarıdır.

DLL dosyaları tek başına çalışmazlar. Bir dll dosyası ses ile alakalı işlevleri yerine getirirken diğer dll dosyaları görüntü ile alakalı işlevleri yerine getiriyor olabilir. Dll dosyalarını not defteri ile açılarak üzerinde değişiklik yapılabilir fakat yanlış yapılan ufak bir hata tamamen çalışmasını engelleyebilir.

DLL, Dynamic Link Library –Dinamik Bağlantı Kütüphanesi- DLL dosyaların görevi çalışan programların ortaklaşa yapmış olduğu işlemleri tek bir dosya içinde yapmak, program çalışma esnasında gerekli olan fonksiyonları kendi içerisinde bulunmaz ise bunu dinamik link kütüphanesinde yani dll dosyasında aramaktadır. Bu şekilde programlar tek bir dosya üzerinden karşılaşarak bellek kullanımı, minimum seviyeye düşürerek hem program hızını ve bilgisayar hızını artıracak birçok dll dosyasını yerine tek bir dll dosyası kullandığından hard disk üzerinde fazla yer kaplamayacaktır. Programlar işlevlerini devam ettirmek için DLL dosyaları içerisinde bulunan işlemelerden yardım alarak çalıştırma bütünlüğü sağlamaktadır. DLL dosyaları çalıştırılmış olduğu programların ayrılmaz bir bütünüdür ve tek başına çalışmazlar. Eğer ilgili dll dosyası yoksa ismi veya içeriği hatalı bir şekilde değişirse dll dosyası eksikliği veya hatalı dll dosyası nedeni ile programın çalışmasında gerekli sistem dosyalarıdır.

Bir dll dosyası ses ile alakalı işlemlerini yerine getirirken diğer DLL dosyaları görüntü ile alakalı işlevleri yerine getiriyor olabilir her dll dosyasının farklı farklı işlevleri bulunmaktadır.  Dll dosyasını ayrına öneli özelliklerden biri aynı zaman dilimi içerisinde bir çok farklı programın bu dosyayı kullanabiliyor olması imkan tanımasıdır. En çok karşımıza çıkan run.dll gibi dosyalar aynı anda birçok farklı programa hizmet edebilmektedir.

DLL düzenlemek için binary düzenleme yazılımlarını kullanabilirsiniz. Yani resource Hacker, ExeScope, ExeWrapper, ResEdit Tools örnek verilebilir.

DLL, exe gibidir fakat doğrudan çalışmazlar. MS paylaşılan kütüphaneleri uygulamasıdır. Hem exe hem de DLL dosyaları taşınabilir yürütülebilir (PE) dosya biçimini temel alır. DLL dosyaları ayrıca COM bileşenleri ve .NET kitapları içerebilir. Bir DLL bir exe veya diğer DLL’nin kullandığı işlevler, sınıflar, değişkenler, kullanıcı arabirimleri ve kaynaklar (Simgeler, resimler, dosyalar … gibi) içerir

İşletim sistemlerinde; dinamik kütüphane ve statik kütüphane olmaz üzere toplam 2 tane kütüphane vardır. Windowsta dosya uzantıları statik kütüphanede .lib ve dinamik kütüphanede ise .dll dir. Temel fark statik kütüphanelerin derleme zamanında çalıştırılabilir dosyaya bağlanmasıdır, dinamik bağlantılı kütüphaneler çalışma zamanına bağlı değildir.

Statik kütüphane doğrudan bir modülün (Exe veya dll) içine gömülü olduğundan, normalde bilgisayarda olsa da statik kitapları görmezsiniz. Dinamik kütüphane tek başına bir dosyadır.

Bir DLL herhangi bir zamanda değiştirilebilir ve yalnızca bir exe açıkça DLL’yi yüklediğinde çalışma zamanında yüklenir. Statik kitaplık exe içinde derlendikten sonra değiştirilemez Bir dll exe kendini güncelleştirmeden ayrı ayrı güncellenebilir.

DLL yükleme, bir program başlangıçta Win32 API LoadLibrary aracılığıyla veya başka bir DLL’nin bağımlılığı olduğunda bir DLL yükler. Bir program bir işlevi yüklemek için GetProcAddress’i veya bir kaynağı yüklemek için LoadResource’u kullanır.

Çoğu uygulama başlangıçta ihtiyaç duydukları DLL dosyalarını yükler. Bunlardan herhangi biri bulunmazsa sistem işlemi hiç başlatılmaz

DLL, tek başına yürütülebilir bir dosya değildir. DLL’ler onları çağıran uygulamalar bağlamında çalışır işletim sistemi DLL dosyasını bir uygulamanın bellek alanına yükler ya uygulama yüklendiğinde (örtük bağlantı –implicit linking-)  ya da çalışma zamanında talep üzerinde (açık bağlantı –explicit Linking-). DLL’ler ayrıca yürütülebilir dosyalar arasında işlevleri ve kaynakları paylaşmayı kolaylaştırır birden çok uygulama, bellekteki bir dll dosyasının tek bir kopyasının içeriğine aynı anda erişebilir.

 

Dll, farklı programla dillerinde yazılmış uygulamaları desteklemeyi kolaylaştırır farklı programlama dillerinde yazılmış programlar, program işlevini çağırma kuralına uyduğu sürece aynı dll işlevini çağırabilir.

DLL, verileri her zaman bellekte mevcut olması yerine yalnızca program aktif olarak onu çağırdığında bir programda kullanıma sunulduğu için kullanılır. Varsayılan olarak windowsta bir çok dll bulunur ancak üçüncü taraf programlar da bunları yükleyebilir

 

cpl

CPL, Windows işletim sistemi tarafından kullanılan ekran, fare, ses denetimi içeren bir Windows Denetim masası öğesidir. Windows denetim masası (control panel) açıldığında otomatik olarak yüklenir. CPL dosyalarına Windows işletim sistemi tarafından başvurulur ve manuel olarak açılmamalıdır.  CPL dosyası system files kategorisine aittir.

.cpl dosyası üzerine çift tıklayarak yürütülür dosyayı açacağınız yazılım daha önce kuruluysa ve dosya ilişkilendirmeleri doğru şekilde ayarlandıysa cpl dosyası açılabilir.

 

dat

Bir çok uygulama data veya kaynak dosyaları için dat dosyasını kullanır. Veri dosyaları doğrudan bir uygulamada açılmaz, genellikle yalnızca dahili amaçlar için DATA içerirler. Aynı dosya uzantısını paylaşan farklı biçimler. Dat dosyasının doğru çalışması için gerekli olan .dll dosya uzantısı tarafından kullanılır. Dll dosyası doğru çalışması için gerekli olan .dat dosyasına erişemediği anda dosya başlatılamayabilir. Dat dosyası multimedya dosyaları arasında yer alıyorsa CVDGEA veya CyberLink PowerDirector gibi yazılımları kullanabilirsiniz, eğer dat dosyası size mail birlikte gelmişse Outlook veya microsft Exchange kullanılabilir.

 

drv

drv dosyaları genellikle Windows ortamlarında aygıt sürücüleri (driver) için kullanılır. Bir driver ile daha üst düzey bilgisayar programlarının bir aygıta etkileşime girmesine izin veren bir bilgisayar programıdır. Bir driver tipik olarak donanımın bağlı olduğu bilgisayar veri yolu veya iletişim alt sistemi aracılığıyla aygıtla iletişim kurar. Çağıran bir program sürücüde bir rutin çalıştırdığında sürücü orijinal arama programındaki rutinleri başlatabilir.