Memory slot 0 in Windows CE 5.0

Hello,
I have a doubt on Windows CE 5.0 Memory Architecture....
why is necessary to clone the SLOTn assigned to a process into the SLOT0 
when the process is running ?

Thanks,
Paolo
0
Utf
1/2/2010 9:34:01 AM
windowsce.platbuilder 744 articles. 0 followers. Follow

4 Replies
1068 Views

Similar Articles

[PageSpeed] 53

One of the reasons is the following: pratically each application uses one or 
more DLL; a DLL typically has some read only section (code) which can be 
shared between several applications and read/write section (data) which is 
not shared because it is different form application to application. The read 
only section is mapped at the same physical address for every application 
while the data reside in the slot of the application. When the an 
application calls the DLL the DLL has to access the application specific 
data and DLL's are designed to look into slot 0 to find the data.


-- 
Luca Calligaris (MVP-Windows Embedded)
l.calligaris.nospam@eurotech.it.nospam
www.eurotech.it


"paolo patierno" <paolopatierno@discussions.microsoft.com> ha scritto nel 
messaggio news:BA19647F-66B6-472F-826A-045EF8A49388@microsoft.com...
> Hello,
> I have a doubt on Windows CE 5.0 Memory Architecture....
> why is necessary to clone the SLOTn assigned to a process into the SLOT0
> when the process is running ?
>
> Thanks,
> Paolo 


0
Luca
1/4/2010 9:09:32 AM
Am 04.01.2010 10:09, schrieb Luca Calligaris [eMVP]:
> One of the reasons is the following: pratically each application uses one or
> more DLL; a DLL typically has some read only section (code) which can be
> shared between several applications and read/write section (data) which is
> not shared because it is different form application to application. The read
> only section is mapped at the same physical address for every application
> while the data reside in the slot of the application. When the an
> application calls the DLL the DLL has to access the application specific
> data and DLL's are designed to look into slot 0 to find the data.
>

When a DLL is loaded in a process the access to the code section could 
be fixed up with the FIXUP records of the PE32 binary. If a DLL is 
shared between processes (loaded at the same address) it resides in slot 
1 as a MODULE.

Do you say each non-MODULE DLL loaded in once process occupies the code 
address space in all processes?

Helge


0
Helge
1/4/2010 2:00:17 PM
> Do you say each non-MODULE DLL loaded in once process occupies the code 
> address space in all processes?

I think that the safe thing to say is that any dll that is not fixed up 
occupies space in Slot 0, which does take away from space for all processes.

Dlls that are not MODULES are not fixed up.
Dlls that are MODULES but don't have a a REL files are not fixed up.
Some dlls that are MODULES are not fixed up if/when Slot 1 is determined to 
be full when romimage runs.

-- 
Bruce Eitman (eMVP)
Senior Engineer
Bruce.Eitman AT Eurotech DOT com
My BLOG http://geekswithblogs.net/bruceeitman

Eurotech Inc.
www.Eurotech.com

"Helge Kruse" <Helge.Kruse-nospam@gmx.net> wrote in message 
news:hhss9n$c96$01$1@news.t-online.com...
> Am 04.01.2010 10:09, schrieb Luca Calligaris [eMVP]:
>> One of the reasons is the following: pratically each application uses one 
>> or
>> more DLL; a DLL typically has some read only section (code) which can be
>> shared between several applications and read/write section (data) which 
>> is
>> not shared because it is different form application to application. The 
>> read
>> only section is mapped at the same physical address for every application
>> while the data reside in the slot of the application. When the an
>> application calls the DLL the DLL has to access the application specific
>> data and DLL's are designed to look into slot 0 to find the data.
>>
>
> When a DLL is loaded in a process the access to the code section could be 
> fixed up with the FIXUP records of the PE32 binary. If a DLL is shared 
> between processes (loaded at the same address) it resides in slot 1 as a 
> MODULE.
>
> Do you say each non-MODULE DLL loaded in once process occupies the code 
> address space in all processes?
>
> Helge
>
> 


0
Bruce
1/4/2010 5:52:44 PM
=?Utf-8?B?cGFvbG8gcGF0aWVybm8=?= [Sat, 2 Jan 2010 01:34:01 -0800]:
 >why is necessary to clone the SLOTn assigned to a process into the SLOT0 

The book, Inside Windows CE, (maybe 1998) went
into that.  From what I remember, one reason was
for fast context switching (WRT address fixups).
Later, when things got real crowded (CE 3 maybe)
there was a call to arms about getting DLLs to
not use so much app-address space (min. of 64 KB
per, and on avg 32 KB wasted).  I think that was
further hacked (or not) to use slot 1, where
possible.  Slot 1 may be a WM-only hack.

Address space is very cramped in pre-6.  A WM app,
for instance, may have 10 MB of private address
space adter starts.  Where the other 22 went,
and why, is answered on page 42

Anyone know if WM7, if it makes it, uses CE6?

-- 
 40th Floor - Software  @  http://40th.com/
  PhantasmX3 - The finest sound in the world
   phantasm.40th.com   ppc   netbook
0
hel
1/4/2010 8:55:53 PM
Reply:

Similar Artilces:

How to get 5 digit accuracy beyond the decimal point.
A currency has 4 digit accuracy. I need 5 digit. I am using Access 2003. You can't use Currency, then, since that's a hard-and-fast limit of the Currency type. Try using the Decimal type. -- Doug Steele, Microsoft Access MVP http://I.Am/DougSteele (no e-mails, please!) "tom" <Spamblocker@ameritech.net> wrote in message news:afg9i.12785$2v1.2433@newssvr14.news.prodigy.net... >A currency has 4 digit accuracy. I need 5 digit. > > I am using Access 2003. > ...

Mailbox moves to Ex2003 don't remove 5.5 mailbox
I have moved several hundred mailboxes from an Exchange 5.5 server running on Windows 2000 to an Exchange 2003 SP1 server running on Windows 2003 without any issues. However, lately I have moved two mailboxes (seperately) and have run into a problem. The Move Mailbox wizard shows a successful move and the mailbox does appear in the Exchange 2003 server, but the mailbox also appears in the Exchange 5.5 server. So, there are two mailboxes for a single account. I have reviewed article 299473 which seems to describe what is happening (although I have not used Replmon.exe to confirm this...

Is Crystal Report ver:11.5.8.826 supported?
Please tell me: Do reports made in CR Professional ver: 11.5.8.826 supported by RMS v2.0? hi Asad, the Last version support is Crystal 8.5 also not worked with 9,10 or 11. "Asad" wrote: > Please tell me: Do reports made in CR Professional ver: 11.5.8.826 supported > by RMS v2.0? Well, I've checked it myself. Crystal Report11 doesnt work with RMs v2.0. Haven't checked ver 9, 10. "Akber Alwani" wrote: > hi Asad, the Last version support is Crystal 8.5 also not worked with 9,10 or > 11. > > > > "Asad" wrote: > > ...

Migrating AD to new domain. How does Exch 5.5 fit in?
Over a weekend (hopefully) I will be migrating from one domain to another temporary domain. Then I will be taking the original domain out of it's current forest and into its own. I will then migrate back to the original domain. I'm using Exchange 5.5. What do I do with Exchange? Should I leave it with the original domain and assume that the appended SIDHistory of the users will still work correctly with it when they move back? I'm thinking this will work since it's happening over a weekend... I don't know anything about migrating Exchange 5.5 to a new domain... Any ...

Can't Get CRM 3.0 Reports To Work
In the readme file that comes with server installation in the early access program it mentions under Known Issues: ************************************************ Microsoft CRM Server Privileges Required for Installing Microsoft CRM and Using an Existing Microsoft SQL Server Reporting Services Server The user installing Microsoft CRM and connecting to an existing Microsoft SQL 2000 Server Reporting Services Server must have as a minimum the Content Manager Role privileges at the Root Folder Level, and System Administrator privileges at the Site Wide Setting Level. ***********************...

I use client ID #s. Some begin with 0. 0 needs to show
I am creating a client sheet. Some of the Client ID #s begin with Zero. How can I get the Zero to show? hi, you can format the cells as a text, hope this helps Regards from Brazil Marcelo "rmingle" escreveu: > I am creating a client sheet. Some of the Client ID #s begin with Zero. How > can I get the Zero to show? You can also use a custom format: Suppose you ID numbers have 7 character including the leading 0 then do this: Select the cell(s) Press Ctrl-1 In the numbers tab select custom. In the box "type" enter 7 zero's HTH "Marcelo" wr...

RMS 2.0/Windows Permissions Error
Good Morning Everyone, I have a question for the group. I have a customer running RMS 2.0, pre SP2 on Windows XP. The customer is trying to lock down his cashiers from installing unauthorized software and other such abuses on the computers. Here is the problem. When locked down he is getting the error: "Server Failure 139: A server failure occurred while attempting to read the register." This error only happens as the POS and goes away when the user is added as a local administrator. I am fairly confident this is a problem with permissions regarding licensing or OPOS, bu...

oulook express 5
I'm loosing the complete contents of local folders of my oulook express 5. How can I retrieve these lost files? A good website for information on OE is: http://www.tomsterdam.com/ This is a group to support Outlook from the Office group of programs. Outlook Express is a part of Internet Explorer and is a quite different program, despite its similar name.. You will probably get a faster and more expert answer if you post this to an Outlook Express news group. Try posting in one of these newsgroups: microsoft.public.windows.inetexplorer.ie5.outlookexpress for OE 5.x microsoft.public.win...

CRM 3.0 Email Tracking doesn't work!!!
CRM user can send an email to contact, email title with token: cas00011000. But when the contact reply this email, the reply email can reach the server but it doesn't saved in the history(tracking doesn't work!) of CRM. The tracking function has been opened. We can't reinstall CRM server to fix this problem becasue there are many of customizations. we are having the exact same problem! did you ever get a solution?? thanks, "CEO" wrote: > CRM user can send an email to contact, email title with token: cas00011000. > But when the contact reply this email, t...

Can a virus exist within the RedadyBoost cache of a USD memory stick?
Hi, I've observed some weird behavior that suggests a computer virus can exist within the RedadyBoost cache of a USD memory stick. I had a hard time formatting and needed to yank the stick out and put it back in before format would work. Am I being superstitious or is there anything to this. What is in a USB memory ReadyBoost cache? Any executable code? In article <uobbwdFULHA.4576@TK2MSFTNGP04.phx.gbl>, nospam@nospam.com says... > > Hi, > > I've observed some weird behavior that suggests a computer virus can exist > within the RedadyBoo...

Losing email in Windows live mail on Windows 7
I am losing some emails that come into my mailbox. I can read it in the Quick View "Unread emails" view but it does not show up in my Inbox or in any other folders. Open that inbox folder, than click View, Show or hide, Show all = messages. If you don't see the View button, press Alt first. --=20 Gary VanderMolen, Microsoft MVP (Mail) Microsoft MVP program: http://mvp.support.microsoft.com "Virgil" <Virgil@discussions.microsoft.com> wrote in message = news:19D2BA1C-BBF4-4E10-8CDC-6BC3406D2E77@microsoft.com... >I am losing some emails that ...

Overlapped/Hidden window?
Is there any way to find out that one window(Static text)is overlapped/hidden by other(ComboBox)? ...

modeless message window in a regular dll?
Hello community, I have written a regular dll that should just show a status window. The problem is that I have no control over the application calling the dll. The application should not be aware of the status window. The window should just be modeless (it shouldn't block *any* application GUI) and it should show a status message. If possible, it should have a Close button. The dll uses a worker thread for requests from the application and it uses a UI thread for socket operations. Note that I use MFC in the dll (which could make it more comfortable to create the window - or - on the ot...

How to change background color of a window that has been created.
I need to change the background of a window that has been created, can you help? Hello Jerry, > I need to change the background of a window that has been created, can > you help? > Answer depends upon the type of window. Typically you can do this in OnEraseBkgnd. Certain controls respond to WM_CTLCOLOR and yet some other, like CButton, need to be owner drawn to change the color. If you have a generic CWnd, you can always specify the brush in the window class; so no special painting is needed. This is good when you know that the background will have one color all the time. -...

POP3 #5
Hi, accidentally downloaded all 250+ items of email from my EX2003 server inbox using Outlook Express and POP3 last night. Unfortunately, as "leave on server" was not on, the emails have completely gone from my "Outlook 2003" inbox. I guess there is some way of getting these back into Exchange as was; preferably with all the meta-information intact? (e.g. priority, reply done, item was read etc.) I guess perhaps I could mount a snapshotted mailstore and run mailbox recovery in some way and get 98% of my stuff back? Any advice gratefully received (I shall be switchi...

Problems with Publisher 2000 and Windows 2000
One of my clients started having problems with Microsoft Publisher 2000 last week. Whenvever she tries to run it on her Windows 2000 box, Windows installer comes up and asks her to insert her office CD, she does, and then she receives an error message saying "The installation source for this product is not available." She is an administrator of her own machine, but ironically, the user "administrator" can run publisher without any problem. I have had this problem with the first disk of Office 2000 in the past, and microsoft was able to resolve it by sending a pr...

Excel memory Error
Hello: When I go to open a new excel spreedsheet, I keep getting a Memor error. I have removed and reinstalled Office 2000. The error does no go away. I have a 80 gig hard drive with over 50 gig free. I have gig of Ram. Page file is set to 700 meg. Can anyone help me. Thank ----------------------------------------------- ~~ Message posted from http://www.ExcelTip.com ~~View and post usenet messages directly from http://www.ExcelForum.com ~~Now Available: Financial Statements.xls, a step by step guide to creating financial statements Sal, I've had the same problem as you this ...

USB RNDIS problem in wince 5.0
Hi to all, I have ported my usb function driver to boot loader code in wince 5.0. It is working fine i.e., when i connect usb cable to PC, it asks for Rndis driver and that driver is loading perfectly and my usb rndis device is showing as network adapter in device manager. the problem is, when i set IP in PC side, after some time it is disconnected automatically. I hope, i explained the problem clearly. Could u guide me. Thanks in advance. Regards - D. My log in hyper terminal is, ==================================================== Before HostMiniInit function *** H...

MS Outlook 2002 Running in Windows 98
I just changed to a new ISP. The ISP walked me through setting up an email account for their site. I no longer have a send button. I also can't see Send/Receive under Tools. I have looked and looked to no avail. Any suggestions would be appreciated. Thanks. Abby Abby, Try resetting your toolbars to the default settings. Note that you will lose any customizations you've made to them, but I think it will let you get your "Send/Receive" button and menu item back. -- Regards, Chris Burnham Microsoft Exchange Support This posting is provided "AS IS" with no...

windows 7 pro 64bit installing 32bit app
i am installing a 32 bit app on a 64 bit win7 platform it registers regsize32.ocx in the install but when i try and load the app it fails on that file and i can not run regsvr32 as the file is not present where does win7 place 32 but drivers like program files x86 You will find the 32bit version of regsvr32 at c:\windows\syswow64. The ocx might be in the same folder as regsvr32 or could be in the folder where you installed the app (\program files(x86)). "Stuart Macleod" <StuartMacleod@discussions.microsoft.com> wrote in message news:A82A204E-43C3-4BB6-9691-6DB4...

installing Windows Server SP2 onto SBS 2003 SP1
I have SBS 2003 SP1. I have been keeping up with all the windows updates for this machine and would like to update the machine to SP2. I had heard that if you try to update the SBS 2003 SP1 server to SP2, you need to unload a lot of the updates issued after the SP2 was submitted. Is this true? Hi Carl, This hasn't been my experience. And there is no SBS 2003 SP2. It's Windows 2003 SP2 installed on top of SBS 2003 SP1 (which already has Win2003 SP1 installed). Run the SBS 2003 BPA prior to the install of Win2003 SP2 to make sure you don't have an issues ...

CRM v3.0 Questions
Hello, Is the fuctionality to unshare multiple records available in v3.0. The 1.2 documentation shows this functionality but it seems to be missing from the actual product. When you re-assign a record in v1.2 the record maintains a share relationship with the prior owner. Does v3.0 function the same way. Are there any tricks (other than using SCRIBE) when importing new records to link multiple contacts to a single lead. Has any new flexibilty been added to the Microsoft record importer. Thanks, Ron In 3.0 if you go to the settings > Organization Settings > System Settings th...

Install 3.0 Failed
I am in the process of installing 3.0 on a server. All of the inital checks are fine. I proceed to install and it fails with an error "Action Microsoft.Crm.Setup.Server.CreateSetupUserAction failed HRESULT 0x80040237" I searched the Knowledge Base and found KB 941498. I did what it said but got the following error for msxml2.dll - LoadLibrary("msxml2.dll") failed. The specified module could not be found. How do I go about getting XML 2 (the parser I'm guessing) when it hasn't be supported in years? Is there something else I can do? I am installing 3.0...

Help! Exchange 5.5 logon failure
Hi all, We recently upgraded our NT domain to Windows Server 2003 Active Directory (Native Mode). While in the process of upgrading our Exchange 5.5 / SP4 server (running on NT4/SP6) to Exchange Server 2003 (Enterprise Edition, running on Windows Server 2003), we noticed that our users can no longer logon to the server using either: - Outlook Web Access - Microsoft Outlook clients (XP or 2003) Please note that if we supply the credentials of the Exchange 5.5 Service account during authentication (on the pop-up dialog box), the logon process succeeds! In addition, POP3/SMTP clients (e.g. Outlo...

NewsMaestro Usenet Supertool v. 4.4.8 for Windows/Linux/Unix released
Download page: http://rapidshare.com/files/118192521/NewsMaestro_4.4.8_Src.zip (Hit Free button to download. For some download managers you need to open the .html file it downloaded to do actual download.) * Documentation update. * Bug fix in Archive 2 HTML generator while doing ReChapter. News Maestro is a power tool for usenet that automatically performs any standard Usenet operation, as specified in various RFCs, individually, or in bulk, on any number of groups and articles, utilizing sophisticated filters to select the articles to be processed. As an automated tool to do anything you...