Arama butonu
Bu konudaki kullanıcılar: 1 misafir
2
Cevap
1521
Tıklama
1
Öne Çıkarma
Sistem dondurma yazılımı geliştirmek için örnek deep freeze çalışma mantığı
S
10 yıl
Teğmen
Konu Sahibi

Deep freeze programı çözebildiğim kadarıyla kurulum sırasında \system32\drivers\DeepFrz.sys şelinde genişletilmiş bir hard disk yönetim driverı yüklüyor. Disk yönetimi için windowsta artık bu driver kullanılıyoryor. Ayrıca C:\Persi0.sys adında bir dosya oluşturuyor. bu dosya içinde eski hard disk mbr kayıdının nin iki yedeği var. birinci yedek sabit kalmak koşuluyla ikinci mbr/mft tablosu sistem açıldıktan sonra DeepFrz.sys disk olarak kaydedildiği için 2. mbr/mft kaydını alıyor öyle açılışı sağlıyor. dosyaya yazma işlemlerinde orjinal dosyalar Persi0.sys içine kopyalanıp modifiyesi yapılır. silme işlemlerinde mbr/mft kaydı silinir böylece dosya silinmiş gibi gözükür. oysa normal diskte ve 1.mbr/mft kaydında orjinaller durur. dosyaya yazma veya modifiye işlemlerinde dosyalar persi0.sys içine kopyalandığından ve ikinci mbr kaydı yenilendiğinden normal diske dokunmaksızın modifiyeli dosyalar ile işlemler yapılmış olur.

yeniden başlatma sırasında ilk olarak \system32\drivers\DeepFrz.sys çalışır persi.sys dosyası birinci mbr/mft kaydısonuna kadar kopyalanıp sıfırlanır. sonra kopya mbr persi0.sys içine eklenir.
komedi böyle devam eder. orjinal dosyalar üzerine yazma olmaz çünkü windows persi0.sys üzerine yazma olabilecek tek dosyadır. windows boş bulduğu alan kadar bu dosyayı genişletebilir.
Kurulumda eklenen regedit kayıtları
[HKEY_LOCAL_MACHINE\SOFTWARE\Faronics\Deep Freeze 6]
"Filename"="deepfreeze.exe"

[HKEY_LOCAL_MACHINE\SOFTWARE\Faronics\Deep Freeze 6]
"DF Status"="Frozen"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DeepFrz]
"Type"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DeepFrz]
"Start"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DeepFrz]
"ErrorControl"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DeepFrz]
"DisplayName"="DeepFrz"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DeepFrz\Parameters]


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DeepFrz\Parameters]
"InstallPath"="C:\\Program Files\\Faronics\\Deep Freeze\\Install C-0\\"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DeepFrz\Parameters]
"PersiPath"="C:\\Persi0.sys"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DeepFrz\Enum]


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DeepFrz\Enum]
"0"="ACPI\\PNP0303\\4&1d401fb5&0"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DeepFrz\Enum]
"Count"=dword:00000006

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DeepFrz\Enum]
"NextInstance"=dword:00000006

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DeepFrz\Enum]
"1"="ACPI\\PNP0F03\\4&1d401fb5&0"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DeepFrz\Enum]
"2"="IDE\\DiskVBOX_HARDDISK___________________________1.0_____\\5&33d1638a&0&0.0.0"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DeepFrz\Enum]
"3"="STORAGE\\Volume\\{31501fe1-5c1b-11e3-914d-806e6f6e6963}#0000000000100000"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DeepFrz\Enum]
"4"="STORAGE\\Volume\\{31501fe1-5c1b-11e3-914d-806e6f6e6963}#0000000006500000"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DeepFrz\Enum]
"5"="HID\\VID_80EE&PID_0021\\6&e993e07&0&0000"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DFServ]


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DFServ]
"Type"=dword:00000110

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DFServ]
"Start"=dword:00000002

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DFServ]
"ErrorControl"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DFServ]
"ImagePath"=hex(2):43,3a,5c,50,72,6f,67,72,61,6d,20,46,69,6c,65,73,5c,46,61,72,6f,6e,69,63,73,5c,44,65,65,70,20,46,72,65,65,7a,65,5c,49,6e,73,74,61,6c,6c,20,43,2d,30,5c,44,46,53,65,72,76,2e,65,78,65,00, /// persi0.sys

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DFServ]
"DisplayName"="DFServ"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DFServ]
"Group"="Boot Bus Extender"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\DFServ]
"ObjectName"="LocalSystem"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\System\DeepFrz]


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\System\DeepFrz]
"TypesSupported"=dword:00000007

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\System\DeepFrz]
"EventMessageFile"=hex(2):25,53,79,73,74,65,6d,52,6f,6f,74,25,5c,53,79,73,74,65,6d,33,32,5c,49,6f,4c,6f,67,4d,73,67,2e,64,6c,6c,3b,25,53,79,73,74,65,6d,52,6f,6f,74,25,5c,53,79,73,74,65,6d,33,32,5c,64,72,69,76,65,72,73,5c,44,65,65,70,46,72,7a,2e,73,79,73,00,


yüklemeden önce hard disk disk servisi tarafından yönetiliyor. sonrasında görevi deepfreeze servisi üzerine alıyor.
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\IDE\DiskVBOX_HARDDISK___________________________1.0_____\5&33d1638a&0&0.0.0\Control]
"ActiveService"="Disk"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\PCIIDE\IDEChannel\4&2617aeae&0&0\Device Parameters]
"ScanCount"=dword:00000007

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\PCIIDE\IDEChannel\4&2f42c713&0&0\Device Parameters]
"ScanCount"=dword:00000009

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\PCIIDE\IDEChannel\4&2f42c713&0&0\Control]
"FilteredConfigVector"=hex(a):a8,00,00,00,01,00,00,00,00,00,00,00,00,00,00,00,d0,c6,9e,89,00,00,00,00,00,00,00,00,01,00,00,00,01,00,01,00,04,00,00,00,01,80,03,00,00,00,00,00,01,00,00,00,04,00,00,00,c8,6e,9e,89,c8,6e,9e,89,00,00,00,00,00,00,00,00,01,01,01,80,11,00,00,00,08,00,00,00,01,00,00,00,f0,01,00,00,00,00,00,00,f7,01,00,00,00,00,00,00,01,01,01,80,11,00,00,00,01,00,00,00,01,00,00,00,f6,03,00,00,00,00,00,00,f6,03,00,00,00,00,00,00,01,02,01,80,01,00,00,00,0e,00,00,00,0e,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\PCIIDE\IDEChannel\4&2f42c713&0&1\Device Parameters]
"ScanCount"=dword:00000009

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\PCIIDE\IDEChannel\4&2f42c713&0&1\Control]
"FilteredConfigVector"=hex(a):a8,00,00,00,01,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,11,02,46,00,01,00,00,00,01,00,01,00,04,00,00,00,01,80,03,00,00,00,00,00,01,00,00,00,20,02,00,00,01,01,00,00,00,00,00,10,00,40,00,00,01,01,00,00,01,01,01,80,11,00,00,00,08,00,00,00,01,00,00,00,70,01,00,00,00,00,00,00,77,01,00,00,00,00,00,00,01,01,01,80,11,00,00,00,01,00,00,00,01,00,00,00,76,03,00,00,00,00,00,00,76,03,00,00,00,00,00,00,01,02,01,80,01,00,00,00,0f,00,00,00,0f,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,





< Bu mesaj bu kişi tarafından değiştirildi serhatdaki -- 4 Aralık 2013; 20:18:46 >