Tem 31

Windows işletim sistemlerinin boot işlemi sırasında ntldr ve boot.ini gibi dosyalar kullanılır. Boot.ini dosyası boot sırasında yüklenecek işletim sistemlerinin sırasını ve disk üzerindeki yerine ilişkin bilgiler içerir.Windows Vista ve Windows Server 2008’de ise boot süreci yeniden düzenlenmiştir. Boot işlemi tümüyle Boot Configuration Data (BCD) dosya temelinde yapılır. BCD, NTLDR ve Boot.ini dosyasının yerine geçmiştir.  Ben de bu makalede boot.ini dosyasının yerini alan BCD’den bahsedeceğim.

BCD sisteminde binary formattaki bir veritabanı dosyasını kullanılır. BCD dosyaları boot uygulamaları ve uygulama ayarlarını tanımlamak için bir depolama alanı sağlar, Boot.ini dosya ayarlarını yapılandırır, sorgular veya değiştirir.

BCD üzerinde yapılacak tüm düzenlemeler Bcdedit.exe ile yapılır. BCD depolama alanlarını yönetmek için geliştirilmiş bir komut satırı aracıdır. Boot seçeneklerini düzenlemek, yeni boot seçenekleri oluşturmak ve mevcut boot seçeneklerini korumak için kullanılır.

Bcdedit, aslında Windows’un önceki sürümlerindeki bulunan Bootcfg.exe ile aynı işi görür ama Bcdedit’te bootcfg’ye göre gelişmiş iki özellik karşımıza çıkıyor :

• Bcdedit’in, Bootcfg.exe’ye göre daha geniş boot seçenekleri sunması
• Script desteğine sahip olması

Not : Bcdedit ile boot seçenekleri düzenleyebilmek için Administrator izinlerine sahip olmak gerekir.

Bcdedit Windows Vista ve sonraki Windows sürümlerinde boot yapılandırılması için kullanılan temel araçtır.Vista da % WINDIR% \System32 klasörü altında bulunur.
Bcdedit veri türleri tek bir değişiklik yapılabilecek şekilde sınırlıdır komplex ve standart değişikliklerin dışına çıkmak istersek WMI ya da API kullanmamız gerekir.

Bcdedit İşlemleri

Bcdedit.exe kullanmına dair birkaç örnek görelim :

C:\bcdedit /enum ile yüklü işletim sistemlerini ve id’lerini görüntüleyebiliriz.


Bcdedit /default komutu ile default işletim sistemini belirleyebiliriz.

Bcdedit /default {current} komutu ile üzerinde çalıştığımız işletim sisteminin default işletim sistemi olarak belirtebiliriz.

bcdedit /bootsequence {ID} {ID} {ID} komutu ile boot sırasını belirleyebiliriz.

Bcdedit /timeout komutu ile boot ekranında karşımıza çıkan işletim sistemi seçmemiz için gerekli bekleme süresini düzenleyebiliriz.

bcdedit /delete {ID} komutu ile varolan boot kayıtlarını silebiliriz.

bcdedit /createstore {ID} komutu ile yeni boot kayıtları yaratabiliriz.

Windows Vista Öncesi işletim sistemlerinin boot ekranında görüntülenen adlarını değiştirmek için aşağıdaki komutu kullanıyoruz.
Bcdedit /set {ntldr} description “örnek boot yazısı”

Windows Vista ve sonraki Windows işletim sistemlerinin boot ekranında görüntülenen adlarını değiştirmek için ise aşağıdaki komutu kullanıyoruz.
Bcdedit /set {current} description “örnek boot yazisi”

NOT : Windows Vista ve sonrası Windows işletim sistemlerinin boot ekranında görüntülenen adlarını değiştirmek için yerine {current} komutunu kullanıyoruz. Ayrıca Windows Vista öncesi işletim sistemleri için de {ntldr} ‘ı kullanıyoruz.


/? Bcdedit komut listesini görüntüler. Bir komut için kullanılabilir komutların bir özetini gösterir. Bir komut için, Bcdedit’i çalıştırdığınızda ayrıntılı yardımı görüntülemek için /? komutu, nerede komutu hakkında daha fazla bilgi için arıyor komut adıdır. Örneğin, Bcdedit /? bu Createstore komutu , createstore ile kullanılabilecek komutları ayrıntılı bir biçimde gösterir.

Umarım yararlı olmuştur. Herkese iyi çalışmalar.

Yazan : ceyhun çamlı \\ Etiketler: , ,

Nis 20

 

 

 

 

 

 

 

 

 

 

İşletim sisteminin açılış sırasında okuduğu önemli bir dosyadır.

Kurulum sırasında işletim sistemi dosyaları bilgisayara kopyalanıp yapılandırılırken bir de bilgisayarın açılış (boot) işlemini yönlendirecek olan boot.ini dosyası oluşturulur.

Bu dosya şu kayıtları içerir:

[boot loader]

timeout=30

default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS

[operating systems]

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS=”Windows Server 2003, Standard” /fastdetect

 

Boot.ini içindeki bilgiler:

 

Multi() ile kullanılan diskin türü

rdisk() ifadesinde de diskin kaçıncı disk olduğu gösterilir. 0 değeri 1. diski ifade eder.

 BOOT.INI switch’leri sistem konfigürasyonu, sistem sürücülerinin çalışması ve birçok konuda sorun gidermeye yardımcı olur. Aşağıdaki tabloda Windows NT, XP, 2000 ve 2003′de kullanılan bazı anahtar’lar yer almaktadır:

 

Switch (Anahtar) seçenekleri:

 

/3GB 

Kullanıcı proseslerine atana adres alanını artırır. 2 GB – 3 GB

Virtual-memory kullanan uygulamaların performansı artırılır.

Windows XP, Windows Server 2003, Windows NT 4 Enterprise Edition, Windows 2000 Advanced Server ya da Datacenter Server 3-GB-kullanabilen uygulamaları çalıştırabilir. (32-bit sistemlerde)

 

/BASEVIDEO  

Standart VGA driver’ını kullanın.

 

/BAUDRATE=

“Kernel mod debugging” sağlar.  Varsayılan 19200 değerini değiştirir. Örneğin: 115200

 

/BOOTLOG

Windows’un boot logunu %SystemRoot%\Ntbtlog.txt dosyasına yazmasını sağlar.

 

/BOOTLOGO

Windows XP ya da Windows Server 2003 üzerindeki standart başlangıç ekranı yerine farklı bir splash screen yüklenmesini sağlar. İlgili bitmap dosyası Windows directory içine Boot.bmp olarak kaydedilir. Ardından boot.ini dosyasına eklenir: “/bootlogo /noguiboot”

 

/BREAK

Hardware abstraction layer (HAL) işleminin HAL başlatma kısmında durdurulmasını sağlar.

/BURNMEMORY=

Windows’un kullanamayacağı belleği. /MAXMEM switch’ine benzer. Değer megabyte olarak belirtilir. Örneğin /BURNMEMORY=128 değeri Windows’un 128 MB bellekten fazla kullanmayacağını belirtir.

 

/CHANNEL=

/DEBUGPORT=1394 ile ilişkili olarak kernel hata giderme için hangi IEEE 1394 kanalının kullanılacağını belirtir. 0 – 62 değer alır. Varsayım değeri 0′dır.

 

/CLKLVL

Standart x86 multiprocessor HAL (Halmps.dll) kendisini level-sensitive olarak sistem saati için konfigüre etmesini sağlar.

 

/CMDCONS     

Recovery Console ile boot etmeyi sağlar.

 

/CRASHDEBUG

/crashdebug switch’i Automatic Recovery ve Restart yeteneğini açar.

 

/DEBUG          

Kernel-mode debugging’i aktif hale getirir.

 

/DEBUGPORT=

Kernel-mode debugging’i ve default seri portu etkin hale getirir. Windows XP ve Windows Server 2003 ayrıca IEEE 1394 portları üzerinde de debugging’i destekler. Örneğin: DEBUGPORT=COM2, /DEBUGPORT=1394.

 

/EXECUTE

No-execute korumasını disable eder. Bakınız: /NOEXECUTE

 

/FASTDETECT

Windows’un varsayım boot seçeneğidir. Windows NT 4′deki /NOSERIALMICE’ın yerine geçmiştir.

Windows Plug and Play device driver’ları paralel ve seri aygıtları araştırır. Ancak Windows NT 4 bu işlemi NTDETECT ile yapar. Bu nedenle /FASTDETECT ile NTDETECT’in paralel ve seri aygıt araştırması atlanır.

 

/KERNEL=

/HAL

Ntldr’ın kernel imaj için varsayım dosya adının (Ntoskrnl.exe) geçersiz kılınmasını sağlar. Genellikle farklı bir HAL kullanımında kullanılır.

 

/LASTKNOWNGOOD   

Sistemin LastKnownGood boot seçeneği ile boot etmesini sağlar.

 

/MAXMEM=     

Windows’un belirtilenden fazlan fiziksel bellek kullanmasını engeller. Örneğin /MAXMEM=32 değeri sistemin fiziksel belleğin ilk 32 MB’ını kullanmasını sağlar.

 

/MININT

Windows PE (Preinstallation Environment) tarafından kullanılır ve Configuration Manager’ın Registry SYSTEM kısmını belleğe yüklemesini sağlar.

 

NODEBUG      

Kernel-mode debugging’in başlatılmasını engeller. Diğer  anahtarları geçersiz kılar: /DEBUG, /DEBUGPORT ve

/BAUDRATE.

 

/NOEXECUTE 

No-execute protection (Data Execution Protection – DEP) sistemini etkinleştirir. Bu, kötü niyetli kodların buffer’ı taşırmasını engeller. Bu anahtarın değişik seçenekleri vardır:

 

  • /NOEXECUTE=OPTIN
  • /NOEXECUTE=OPTOUT
  • /NOEXECUTE=ALWAYSON
  • /NOEXECUTE=ALWAYSOFF ile ise DEP işlemi geçersiz hale getirilir.

 

/NOGUIBOOT

Windows’un grafik ortamda başlamamasını sağlar. Boot işleminin aşamalarını görmek için kullanılır.

 

/NOSERIALMICE=[COMx | COMx,y,z...]          

Windows NT 4 ile kullanılır. /FASTDETECT ile değiştirilmiştir. Belirtilen COM portlarında seri mouse’ların araştırılmasını engeller.

 

/NUMPROC=

Çok işlemcili bir sistem üzerindeki CPU sayısını belirtir.

Örneğin /NUMPROC=2

 

/ONECPU

Çok işlemcili bir sistemde Windows’un yalnızca bir CPU kullanmasını sağlar.

 

/PAE

Ntldr’in Ntkrnlpa.exe’yi yüklemesini sağlar. Ntkrnlpa.exe, x86 PAE’den yararlanan versiyonudur.

 

/PCILOCK

Windows’un PCI aygıtlarına dinamik olarak IO/IRQ atamasını durdurur.

 

/RDPATH=

System Disk Image (SDI) dosyasını belirtir. Genellikle /RDIMAGEOFFSET ile kullanılır.

 

/REDIRECT

Windows XP ile gelmiştir. Windows’un Emergency Management Services (EMS) sistemini etkin hale getirmesini ve Windows’un seri port üzerinden sistem yönetim komutlarını kabul etmesini sağlar. Seri port ve baudrate EMS ile belirtilir.

 

/SAFEBOOT

Safe boot seçeneklerini belirtir. Bu seçenek manuel olarak belirtilmez. F8 tuşuna basıldığında Ntldr tarafından kullanılır.

 

/SCSIORDINAL

Windows’u SCSI ID kontroller’a yönlendirir.

 

/SDIBOOT=

Windows XP Embedded sistemlerde Windows’un RAM diskteki System Disk Image (SDI) imaj dosyasından boot etmesini sağlar.

 

/SOS

Windows’un boot sırasında yükleyeceği aygıt sürücülerini (device drivers) listesini belirtir.  Sistem versiyonu, fiziksel bellek miktarı ve işlemci sayısı.

 

/TIMERES=     

Standart x86 çok işlemcili HAL üzerindeki sistem timer’ını düzenler. HAL şu ayarları (resolution) kabul eder:

 

Yüz nanosecond Milliseconds (ms)

9766 0.98

19532 2.00

39063 3.90

78125 7.80

 

Varsayım değer 7.8 ms’dir. Örnek: /TIMERES=21000 değeri timer’ın 2.0 ms resolution değerinde olmasını sağlar.

 

/USERVA=

Windows XP ve Windows Server 2003′de desteklenir. /3GB switch’i gibi bu switch uygulamaya daha geniş adres atar.

 

/WIN95

Ntldr’in Bootsect.w40 içindeki Consumer Windows boot sektörden boot etmesini sağlar. Çok boot’lu sistemlerde kullanılır. MS-DOS, Consumer Windows ve Windows versiyonlarının kurulduğu sistemlerden kullanılır.

 

/WIN95DOS

Ntldr’ın Bootsect.dos içindeki MS-DOS boot sektöründen boot etmesini sağlar. Bu switch’de çok boot’lu sistemlerde kullanılır.

 

/YEAR=

Windows zaman (time) fonksiyonunun bilgisayarın sistem zamanından değeri geçersiz kılmasını sağlar. Örneğin: /YEAR=2009.

 

Yazan : ceyhun çamlı \\ Etiketler: