Question about deploying with SDI

  • Thread starter Thread starter Ted Lee
  • Start date Start date
T

Ted Lee

Hi folks.

how can I make SDI image assign the HDD size fully without making real size
SDI image?

for example,
run-time image size: 350MB
HDD size: 40GB

With this situation, I make SDI image size 400MB and copy the run-time to
it.
so, my SDI image's size is just 400MB (very portable with CDR)
after deploying this image via SDI2HD or SDIMGR, my HDD has only 420MB
partition and large unallocated area. doesn't it?

Can't the large unallocated area be allocated without making real size SDI
image?
in this case, 40GB SDI image!
I know Symantec Norton Ghost image can do it.
but the license is the problem.

I have read huge amount of articles on this NG.
but, I can't find any clue.
anybody to help me? my OEM wants it eagerly.

--
Ted Lee [Dr.Packet]
DST Corporation (http://www.dstcorp.co.kr, http://www.dst-asia.com)
Windows Embedded Community in Asia [WECOM Asia]
http://www.wecomasia.com
Windows Embedded Community in Korea [WECOM Korea]
http://wecom.dstcorp.co.kr
--
 
I have searched for this option and wasn't able to find it (it is not there
or I haven't searched good enough).

There are few problems with this to work.
SDI PART is byte copy of disk partition on disk you can have garbage not
just zeroes on unused space. SDI doesn't care nor it should care, since you
can have different file system.

I'm using SDI file created from RAM partition from other SDI file, and of
course FAT otherwise this procedure it won't work. So when you open new RAM
disk it is zero empty, and you copy files to it, there is no fragmentation,
and data is compact. then I use this RAM partition to create new SDI file
that is compacted. Zeroes from last data to the end of file.
Then I use my utility that store this as raw data to USB flash. And then use
custom boot loader to load this to memory for ram boot.

In most part this is not applicable to you, but you can use it with
modification to create compact SDI file, that will have zeroes at the end.
and then make simple app that will trim zeroes from end, and change size of
DISK BLOB accordingly. This will work for FAT, but not for NTFS, that has
signatures at the end.



Instead of this, you should consider creating XPE partition that is 300-400
mb, and data partition using diskpart, than will be used for pagefile, data,
etc.


Best regards,
Slobodan
 
Ted, SDI cannot do this in its current form. In addition to Slobodan's
suggestion below, you can try the following. It should work (I havent
played with SDI in a while so can't say for sure).
1. Instead of creating a "DISK", create a PART blob (ie. a copy of the
350MB partition) into the SDI file.
2. Create a partition > 350MB (for example a single partition of 40GB).
3. Use SDIMGR to Copy the 350MB PART blob onto your 40GB partition.
This "should" work.
-Anil [MS] This posting is provided AS IS. It provides no warranties and
confers no rights.


Slobodan Brcin said:
I have searched for this option and wasn't able to find it (it is not there
or I haven't searched good enough).

There are few problems with this to work.
SDI PART is byte copy of disk partition on disk you can have garbage not
just zeroes on unused space. SDI doesn't care nor it should care, since you
can have different file system.

I'm using SDI file created from RAM partition from other SDI file, and of
course FAT otherwise this procedure it won't work. So when you open new RAM
disk it is zero empty, and you copy files to it, there is no fragmentation,
and data is compact. then I use this RAM partition to create new SDI file
that is compacted. Zeroes from last data to the end of file.
Then I use my utility that store this as raw data to USB flash. And then use
custom boot loader to load this to memory for ram boot.

In most part this is not applicable to you, but you can use it with
modification to create compact SDI file, that will have zeroes at the end.
and then make simple app that will trim zeroes from end, and change size of
DISK BLOB accordingly. This will work for FAT, but not for NTFS, that has
signatures at the end.



Instead of this, you should consider creating XPE partition that is 300-400
mb, and data partition using diskpart, than will be used for pagefile, data,
etc.


Best regards,
Slobodan



Ted Lee said:
Hi folks.

how can I make SDI image assign the HDD size fully without making real size
SDI image?

for example,
run-time image size: 350MB
HDD size: 40GB

With this situation, I make SDI image size 400MB and copy the run-time to
it.
so, my SDI image's size is just 400MB (very portable with CDR)
after deploying this image via SDI2HD or SDIMGR, my HDD has only 420MB
partition and large unallocated area. doesn't it?

Can't the large unallocated area be allocated without making real size SDI
image?
in this case, 40GB SDI image!
I know Symantec Norton Ghost image can do it.
but the license is the problem.

I have read huge amount of articles on this NG.
but, I can't find any clue.
anybody to help me? my OEM wants it eagerly.

--
Ted Lee [Dr.Packet]
DST Corporation (http://www.dstcorp.co.kr, http://www.dst-asia.com)
Windows Embedded Community in Asia [WECOM Asia]
http://www.wecomasia.com
Windows Embedded Community in Korea [WECOM Korea]
http://wecom.dstcorp.co.kr
 
To add to this,

Doing this would render 39.5+ GB of disk space inaccessible.
Then you would need to increase size of FAT file system in FAT boot sector
table filed BPB_TotSec32 at offset 20h.

So you would need to do:
1. Run FBA on partition >5GB of size.
2. Copy post FBA files to partition of 350MB.
3. use sdimgr to copy PART blob in SDI file.
4. find FAT boot table pos 20h and change this DWORD to reflect maximum
accessible sector count available to FS. (40000000/512=78000)

After this you can use your image with full disk size.
Step 1 is probably required to avoid license check violation caused by
improper partition size



Regards,
Slobodan

Anil Ingle said:
Ted, SDI cannot do this in its current form. In addition to Slobodan's
suggestion below, you can try the following. It should work (I havent
played with SDI in a while so can't say for sure).
1. Instead of creating a "DISK", create a PART blob (ie. a copy of the
350MB partition) into the SDI file.
2. Create a partition > 350MB (for example a single partition of 40GB).
3. Use SDIMGR to Copy the 350MB PART blob onto your 40GB partition.
This "should" work.
-Anil [MS] This posting is provided AS IS. It provides no warranties and
confers no rights.


Slobodan Brcin said:
I have searched for this option and wasn't able to find it (it is not there
or I haven't searched good enough).

There are few problems with this to work.
SDI PART is byte copy of disk partition on disk you can have garbage not
just zeroes on unused space. SDI doesn't care nor it should care, since you
can have different file system.

I'm using SDI file created from RAM partition from other SDI file, and of
course FAT otherwise this procedure it won't work. So when you open new RAM
disk it is zero empty, and you copy files to it, there is no fragmentation,
and data is compact. then I use this RAM partition to create new SDI file
that is compacted. Zeroes from last data to the end of file.
Then I use my utility that store this as raw data to USB flash. And then use
custom boot loader to load this to memory for ram boot.

In most part this is not applicable to you, but you can use it with
modification to create compact SDI file, that will have zeroes at the end.
and then make simple app that will trim zeroes from end, and change size of
DISK BLOB accordingly. This will work for FAT, but not for NTFS, that has
signatures at the end.



Instead of this, you should consider creating XPE partition that is 300-400
mb, and data partition using diskpart, than will be used for pagefile, data,
etc.


Best regards,
Slobodan



Ted Lee said:
Hi folks.

how can I make SDI image assign the HDD size fully without making real size
SDI image?

for example,
run-time image size: 350MB
HDD size: 40GB

With this situation, I make SDI image size 400MB and copy the run-time to
it.
so, my SDI image's size is just 400MB (very portable with CDR)
after deploying this image via SDI2HD or SDIMGR, my HDD has only 420MB
partition and large unallocated area. doesn't it?

Can't the large unallocated area be allocated without making real size SDI
image?
in this case, 40GB SDI image!
I know Symantec Norton Ghost image can do it.
but the license is the problem.

I have read huge amount of articles on this NG.
but, I can't find any clue.
anybody to help me? my OEM wants it eagerly.

--
Ted Lee [Dr.Packet]
DST Corporation (http://www.dstcorp.co.kr, http://www.dst-asia.com)
Windows Embedded Community in Asia [WECOM Asia]
http://www.wecomasia.com
Windows Embedded Community in Korea [WECOM Korea]
http://wecom.dstcorp.co.kr
 
Back
Top