Remote Boot - (RAM) Disk Size

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

Hi!

I have read quite some (very helpful, thanks Slobodan) postings here but
want to confirm what I think I have learned:

I am using Remote Boot to deploy my images. Thus XPE starts out of the RAM
Disk and there is no need for EWF. Is there? Is it even possible to use EWF
in this situation?

I used a 256MB SDI as boot image (size of my XPE was about 200MB). This left
about 50 MB available on "Drive" C:

So I figured that the size of the disk provided by "Windows RAM Disk Driver"
equals the size of the boot image? Can the size be adjusted somewhere e.g. to
provide a "Drive" C: with 512MB?

I could of course just enlarge the boot image, but as compression is not
supported for SDI images (if I understood correctly) this would hurt boot
performance badly and then there is a limit of 512MB for boot images?

Thanks, Flox.
 
Hi Flox,
Thus XPE starts out of the RAM
Disk and there is no need for EWF. Is there?
You are correct. There is no need for EWF since all data will be in RAM that
will be discarder when you reboot.
Is it even possible to use EWF in this situation?
Reg ram EWF can be configured to protect volumes on HDD probably even on RAM
disk but this is probably not what you want.
So I figured that the size of the disk provided by "Windows RAM Disk
Driver"
equals the size of the boot image? Can the size be adjusted somewhere e.g.
to
provide a "Drive" C: with 512MB?

On the begining of SDI file there is a int64 value that tell you where
paritition begin in SDI file and size of that partition.
I tweak size value and made a custom boot loader that load only real data to
RAM. when I let XPe boot from RAM disk it sees vol size that I gave it and
all usefull data are there.
You can make also something like this.

For 512 MB image limit you should make custom RAM Disk driver to overcome
this problem :-(

Regards,
Slobodan
 
Thanks for the quick answer! I must say that I am not really satisfied with
the tools I bought, TD is lacking some basic functionality and the whole
documentation is rather incomplete. Especially trying to reduce footprint is
rather guessing and has nothing to do with productivity.

BUT: To have this discussion group (almost) makes up for it! Thanks and keep
up the good work!

I am currently looking for a "small footprint" solution to add "eventvwr"
without having to add the whole "Administration Support Tools" (>40 MB!). I
heard this should be possible.

I am also looking for a good solution for Taskmanager (which pull in "Dos
Windows on Windows Support" among other legacy stuff I). But this might not
be possible and I´ll have to go with cmd tools instead...
 
Hi Flox,
Thanks for the quick answer! I must say that I am not really satisfied
with
the tools I bought, TD is lacking some basic functionality and the whole
documentation is rather incomplete. Especially trying to reduce footprint
is
rather guessing and has nothing to do with productivity.

All your comments and sugestion you should send to MS as a feedback so that
they know what people want the most.
http://msdn.microsoft.com/embedded/community/community/feedback/feedxp/default.aspx

For documentation to be complete it should cover all aspect of registry and
windows and frankly I do not think that XPe team or anyone else for that
matter know them all or have them in one place.
So you best friend are serach trough different NG by google groups, and
online MSDN documentation that cover most if not all things, as long as you
know what to look for (usually it is very hard to find some advanced
things).

Instead of trying to reduce footprint maybe you should try starting by small
footprint and then adding only things that you absolutely need.
Start tests by using "minlogon sample macro" component that will make you
almost minimal image that you need.
BUT: To have this discussion group (almost) makes up for it! Thanks and
keep
up the good work!

I am currently looking for a "small footprint" solution to add "eventvwr"
without having to add the whole "Administration Support Tools" (>40 MB!).
I
heard this should be possible.

Event Viewer is GUI program that have havy dependencies and you should avoid
using these programs if you realy don't have to.
There are components that MS did not considered to be vital to make smaller
so they contain much more that it is required. This migh be a case with
"Administration Support Tools", so you can go to component designer and make
your component that will include only things really necesary for Even Viewer
or any other thing to work. (As you can see for small images you will have
to spend some time on trial and error development).
I am also looking for a good solution for Taskmanager (which pull in "Dos
Windows on Windows Support" among other legacy stuff I). But this might
not
be possible and I´ll have to go with cmd tools instead...

Same as above :-(


Regards,
Slobodan
 
Maybe we should set up a "I got XY running by adding these files to minlogon
sample macro" database?

But seriously! Who is designing OS at MS? If event viewer and task manager
(and yes in the user friendly gui form) is not essential to an OS what is?

It just seems (well that´s a fact I guess) that windows never was designed
to be "embedded" and all we have now as XPE is "some trial and error don´t
know ourselves what depends on what" engineering... at least I get my apps
working, but considering the time I spent with XPE guessing ("development") I
have to reconsider using a slim realtime OS I can fully control and
understand for our purpose, just thought porting our apps would be more time
consuming but maybe I was wrong...
 
Maybe we should set up a "I got XY running by adding these files to
minlogon
sample macro" database?

Someone would definitely benefit from this DB :-)
But seriously! Who is designing OS at MS?
What part of OS?
XP Pro is definitely not designed from Start with Embedded usage in mind.
:-(
If event viewer and task manager
(and yes in the user friendly gui form) is not essential to an OS what is?

I do not need nor use them, but "task manager" should not add too much
dependencies.
It just seems (well that´s a fact I guess) that windows never was designed
to be "embedded" and all we have now as XPE is "some trial and error don´t
know ourselves what depends on what" engineering... at least I get my apps
working, but considering the time I spent with XPE guessing
("development") I
have to reconsider using a slim realtime OS I can fully control and
understand for our purpose, just thought porting our apps would be more
time
consuming but maybe I was wrong...

Piece of advice. Try making your application as a shell, and make all extra
options that you will need in your applciation (if possible).
Do not use .net and other fancy stuff, try sticking with Win32 API and you
should be fine.

The more things you add the more support later you will need to do for
security updates, etc.

Regards,
Slobodan
 
flox,

I actually agree with the points from your post but just wanted to mention a few things.

If you are looking for a really componentized Win32-based OS you may want to evaluate Windows CE. One big advantage of CE vs XPe is
that it was in fact started as an embedded OS for devices and carried out the idea of system componentization and
compartmentalization through many years. XPe, on other hand, coming from XP Pro/NT/NTe world and cannot be applied to such broad
range of embedded devices as CE does. Not to mention CE supports variaty of processors, XPe - only x86.

I regret that some latest features added to CE (IE 5.5, IE 6.0, etc.) that were practically ported from Windows Desktop lost such
high level of componentization. However, these features are mostly few applications, not system components nor driver related code.

Although it is obvious that CE Win32 is just a subset (in some areas - a superset) of XP Win32. But this would depend on the
components included in the build anyway, right? So, for many Win32 applications it is definitely enough and relative easy to port
from Desktop.

One big advantage of CE I see in provided source code (when I say CE I mean CE Platform Builder). You don't just get amazingly much
of code for system components, drivers, applications but you can also change the code for your needs or do derivatives of Microsoft
CE private tree.

A time ago I was thinking about some functionality missing from XPe (tools) and I came to conclusion that it really needed a concept
of non-production quality components. Obviously, Microsoft testing resources are limitted (as any compony's resources would) to
create many more software components in XPe database that would cover some useful function sets (like XY functions working on
minlogon in your request). However, if a new component XY passed some "dev" testing at least (created by dev who knew static and
dynamic dependencies and, optional but still nice, had access to the software source code), all XPe developers would only benefit
from having such component in the database (could be marked as NOT released, for example).
Again, similar concept has been working perfectly in CE world - there is much of OS code that is not production quality system
components. But it is always sooo useful to have something to start with.

Just my two cents...
 
Thanks a lot for your opinion! I will have a look at CE but I have a feeling
that even with CE I don´t get the "really interesting" parts of the source
and all the essential information I need to really know what I am doing, do
I?

And then there is the MS "factor" if you talk about "limited resources". I
don´t see why I should spend a "ridiculous" amount of money on XPE or CE for
what I get (sorry guys, but compared to the quality we just HAVE to deliver
with our software and the price we sell it compared to the price of one XPE
license... I just rather skip the comment).

I have been working with quite some very handy royalty free
embedded/realtime OS which come with full source and exactly the tools I need
e.g. controlling tasks etc. (even with gui) I have had problems with creating
a small footprint for with XPE.

I had just thought that I could save on time, porting and testing if I just
used XPE as our apps currently run under NT and 2K, but it turns out that I
have to invest a lot of time in building a small footprint XPE "searching in
the dark". At least I know what I am doing if I was to port my own
applications... And then I have to run all the tests again for my XPE because
how can I be sure I did not miss something which could compromise stability
of our apps???

But I have learned a lot about XP(E) and with CE there is still more to
learn, but rather for that purpose only, unless MS does some homework...
 
flox,

I guess this is an old topic. It is always going to be your choice to pick the embedded OS that is right for you and your customers.

Image optimizations on any embedded OS usually requires some good knowledge of OS components and often is a painful process. This is
not on Microsoft XPe and CE.

Talking about royalties. I personally consider XPe runtime licencies pretty expensive and, more important, the licence pricing is
not as flexible as for CE where you can get CE Core licence just for 3$. I can tell you that the Core licence is not little and you
can do with it way too more than, say, with XPe kernel image.

Also, consider the fact of how many developers you can "easy and quickly" find that can program in Win32 world - to port your
application (if it is a big application and requires professional team work).

Btw, creating small footprint image with XPe is not a question. However, how small your image would be more often depends on your
own application dependencies.

KM
 
Back
Top