Thread View: be.comp.programming
20 messages
20 total messages
Started by dichtertje
Mon, 07 Jul 2003 20:05
dll's tijdens opstarten windows laden
Author: dichtertje
Date: Mon, 07 Jul 2003 20:05
Date: Mon, 07 Jul 2003 20:05
9 lines
1507 bytes
1507 bytes
Hallo, Een aantal applicaties zoals Mozilla als deze optie opstaat laden hun dll's tijdens het opstarten van windows om later het opstarten van de programma's te versnellen. Weet iemand hoe dit gedaanwordt? -- Q: Why did Menachem Begin invade Lebanon? A: To impress Jodie Foster.
Re: dll's tijdens opstarten windows laden
Author: Leon Zandman
Date: Mon, 07 Jul 2003 20:19
Date: Mon, 07 Jul 2003 20:19
14 lines
1810 bytes
1810 bytes
> Een aantal applicaties zoals Mozilla als deze optie opstaat laden hun > dll's tijdens het opstarten van windows om later het opstarten van de > programma's te versnellen. Weet iemand hoe dit gedaanwordt? Ik denk dat ze tijdens het opstarten van windows gewoon een executable starten (via het menu 'opstarten' of via een van die registry-keys) die de DLL's inlaadt. Als je daarna de 'echte' applicatie opstart, dan zijn die DLL's al ingeladen door de autostart-applicatie. Daardoor hoeven de DLL's niet opnieuw geladen te worden, maar kan de applicatie gewoon direct gelinkt worden aan de DLL's. Groeten, Leon Zandman
Re: dll's tijdens opstarten windows laden
Author: dichtertje
Date: Mon, 07 Jul 2003 20:48
Date: Mon, 07 Jul 2003 20:48
19 lines
2372 bytes
2372 bytes
In nl.comp.programmeren Leon Zandman <REMOVETHISleon@wirwar.com> wrote: >> Een aantal applicaties zoals Mozilla als deze optie opstaat laden hun >> dll's tijdens het opstarten van windows om later het opstarten van de >> programma's te versnellen. Weet iemand hoe dit gedaanwordt? > Ik denk dat ze tijdens het opstarten van windows gewoon een executable > starten (via het menu 'opstarten' of via een van die registry-keys) die > de DLL's inlaadt. Als je daarna de 'echte' applicatie opstart, dan zijn > die DLL's al ingeladen door de autostart-applicatie. Daardoor hoeven de > DLL's niet opnieuw geladen te worden, maar kan de applicatie gewoon > direct gelinkt worden aan de DLL's. Ik had ondertussen de volgende links gevonden: http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80/support/kb/articles/Q197/5/71.asp&NoWebContent=1 http://fy.chalmers.se/~appro/nt/DLL_PRELOAD/ -- Your mode of life will be changed for the better because of good news soon.
Re: dll's tijdens opstarten windows laden
Author: Leon Zandman
Date: Mon, 07 Jul 2003 22:18
Date: Mon, 07 Jul 2003 22:18
30 lines
2801 bytes
2801 bytes
> Ik had ondertussen de volgende links gevonden: Oei, ik denk niet dat dit mechanisme bedoeld is voor jouw vraag/probleem. Dit mechanisme maakt het volgens mij mogelijk om in te haken op belangrijke systeemonderdelen van Windows, bijv. om bepaalde onderdelen van Windows te kunnen debuggen of om bepaalde functionaliteit toe te voegen aan elk win32-programma. Waarschijnlijk bereik je hiermee daadwerkelijk je doel en worden de DLL's tijdens het opstarten van Windows ingeladen. Maar ik heb toch het gevoel dat je hier goed verkeerd zit. De DLL wordt zo gekoppeld aan elk win32-proces. Dat is waarschijnlijk overkill, aangezien alleen je eigen applicatie die DLL's nodig heeft. Er zullen nog wel meer haken en ogen aan dit verhaal zitten, bijv. m.b.t. security en crash-gevoeligheid van Windows. Ik denk toch echt dat de beste oplossing gewoon is het gebruiken van een tweede process, dat tegelijkertijd gestart wordt met Windows en constant op de achtergrond draait. Dit process moet dan alle door jou te gebruiken DLL's inladen, zodat ze alvast in het geheugen zitten. Daarna zal jouw 'echte' applicatie waarschijnlijk sneller opstarten. Microsoft deed zoiets ook altijd met Office. Daar had je 'osa.exe', een programma met als enige functionaliteit het inladen van de Office DLL's. Overigens vind ik zelf dat pre-loaden van DLL's behoorlijk irritant. Kost weer extra opstarttijd. Maar da's mijn mening ;-) Groeten, Leon Zandman
Re: dll's tijdens opstarten windows laden
Author: Dr.Ruud
Date: Mon, 07 Jul 2003 22:32
Date: Mon, 07 Jul 2003 22:32
11 lines
1792 bytes
1792 bytes
Leon Zandman skribis: > Microsoft deed zoiets ook altijd met Office. Daar had je 'osa.exe', > een programma met als enige functionaliteit het inladen van de Office Die osa kan ietsje meer. Met optie -s wordt bijvoorbeeld de screensaver gestart. Een icoontje daarvoor zit ook in osa.exe, het was een optie in de Office Shortcut Bar. -- Affijn, Ruud
Re: dll's tijdens opstarten windows laden
Author: Leon Zandman
Date: Mon, 07 Jul 2003 23:59
Date: Mon, 07 Jul 2003 23:59
10 lines
1659 bytes
1659 bytes
> Die osa kan ietsje meer. Met optie -s wordt bijvoorbeeld de screensaver > gestart. Een icoontje daarvoor zit ook in osa.exe, het was een optie in > de Office Shortcut Bar. Oh ja? Geinig. Nou ja, maar voor het verhaal van deze thread maakt dat verder niet veel uit. Leon
Re: dll's tijdens opstarten windows laden
Author: Roland Wolters
Date: Tue, 08 Jul 2003 10:07
Date: Tue, 08 Jul 2003 10:07
21 lines
1323 bytes
1323 bytes
dichtertje <dichtertje@yahoo.com> wrote in news:1057608346.89177 @seven.kulnet.kuleuven.ac.be: > Hallo, > > Een aantal applicaties zoals Mozilla als deze optie opstaat laden hun > dll's tijdens het opstarten van windows om later het opstarten van de > programma's te versnellen. Weet iemand hoe dit gedaanwordt? > a.k.a. verspillen van recources. Ik haat dat. Mazzl, -- Roland Wolters Homepage: http://www.wolters-ict.nl WebLog : http://www.roland.135.it Please reply to newsgroups only. Thanks.
Re: dll's tijdens opstarten windows laden
Author: Dr.Ruud
Date: Tue, 08 Jul 2003 21:52
Date: Tue, 08 Jul 2003 21:52
14 lines
1767 bytes
1767 bytes
Roland Wolters skribis: > dichtertje: >> Een aantal applicaties zoals Mozilla als deze optie opstaat laden hun >> dll's tijdens het opstarten van windows om later het opstarten van de >> programma's te versnellen. Weet iemand hoe dit gedaanwordt? > a.k.a. verspillen van recources. Ik haat dat. Valt best mee, ze belanden (indien lang genoeg ongebruikt) al snel in je swapfile. -- Affijn, Ruud
Re: dll's tijdens opstarten windows laden
Author: Roel Schroeven
Date: Tue, 08 Jul 2003 22:22
Date: Tue, 08 Jul 2003 22:22
19 lines
1842 bytes
1842 bytes
In article <beflmq.1d8.1@news.isolution.nl>, Dr.Ruud wrote: > Roland Wolters skribis: >> dichtertje: > >>> Een aantal applicaties zoals Mozilla als deze optie opstaat laden hun >>> dll's tijdens het opstarten van windows om later het opstarten van de >>> programma's te versnellen. Weet iemand hoe dit gedaanwordt? > >> a.k.a. verspillen van recources. Ik haat dat. > > Valt best mee, ze belanden (indien lang genoeg ongebruikt) al snel > in je swapfile. Dan heb je er ook niet veel meer aan, want dan moeten ze toch ook opnieuw in het geheugen geladen worden als je ze nodig hebt. -- "Codito ergo sum" Roel Schroeven
Re: dll's tijdens opstarten windows laden
Author: KLinZ
Date: Tue, 08 Jul 2003 22:48
Date: Tue, 08 Jul 2003 22:48
23 lines
2205 bytes
2205 bytes
Roel Schroeven wrote: > In article <beflmq.1d8.1@news.isolution.nl>, Dr.Ruud wrote: >> Roland Wolters skribis: >>> dichtertje: >> >>>> Een aantal applicaties zoals Mozilla als deze optie opstaat laden >>>> hun dll's tijdens het opstarten van windows om later het opstarten >>>> van de programma's te versnellen. Weet iemand hoe dit gedaanwordt? >> >>> a.k.a. verspillen van recources. Ik haat dat. >> >> Valt best mee, ze belanden (indien lang genoeg ongebruikt) al snel >> in je swapfile. > > Dan heb je er ook niet veel meer aan, want dan moeten ze toch ook > opnieuw in het geheugen geladen worden als je ze nodig hebt. Ja, maar... het laden vanuit de swapfile gaat sneller (paging weetjewel). Desondanks zou ik er zelf toch ook niet zo snel voor kiezen om DLL's te preloaden. Laat de OP liever z'n programma optimaliseren :-) -- www.zenobits.com
Re: dll's tijdens opstarten windows laden
Author: dichtertje
Date: Wed, 09 Jul 2003 08:15
Date: Wed, 09 Jul 2003 08:15
5 lines
1516 bytes
1516 bytes
Bedankt voor de reacties! -- He that is giddy thinks the world turns round. -- William Shakespeare, "The Taming of the Shrew"
Re: dll's tijdens opstarten windows laden
Author: dichtertje
Date: Wed, 09 Jul 2003 08:16
Date: Wed, 09 Jul 2003 08:16
10 lines
1646 bytes
1646 bytes
KLinZ <klinz@nospamzenobitsspamno.com> wrote: > Laat de OP liever z'n programma optimaliseren :-) Het is niet echt mijn programma. -- F.S. Fitzgerald to Hemingway: "Ernest, the rich are different from us." Hemingway: "Yes. They have more money."
Re: dll's tijdens opstarten windows laden
Author: Nicolas Barbier
Date: Wed, 09 Jul 2003 09:20
Date: Wed, 09 Jul 2003 09:20
32 lines
2609 bytes
2609 bytes
KLinZ wrote: > Roel Schroeven wrote: > >> In article <beflmq.1d8.1@news.isolution.nl>, Dr.Ruud wrote: >> >>> Valt best mee, ze belanden (indien lang genoeg ongebruikt) al snel >>> in je swapfile. >> >> Dan heb je er ook niet veel meer aan, want dan moeten ze toch ook >> opnieuw in het geheugen geladen worden als je ze nodig hebt. > > Ja, maar... het laden vanuit de swapfile gaat sneller (paging weetjewel). Dat betwijfel ik, aangezien pages in je swapfile waarschijnlijk in een meer willekeurige volgorde gaan staan dan in het oorspronkelijke bestand. Bij een gemiddeld besturingssysteem worden de pages voor een uitvoerbaar bestand trouwens helemaal nooit in de swapruimte gestoken omdat ze toch niet beschrijfbaar zijn. Dat geldt minstens voor Windows (9x en NT), Linux, Mach (met een gemiddelde swapper) en voor waarschijnlijk alle BSD's. De snelheidswinst zal wel vooral te danken zijn aan datastructuren ed (in de ruime betekenis, dus ook linken etc) die opnieuw opgebouwd moeten worden als je het programma herstart. Bv als je Mozilla helemaal stopt (ook dat achtergrondding), dan duurt het toch langer om een nieuwe Mozilla te starten dan om een nieuw venster te openen als Mozilla al gestart geweest zou zijn. Het duurt wel minder lang dan het van "nul" starten, wat dan wordt veroorzaakt door het al in ram aanwezig zijn van die pages. -- Nicolas Barbier
Re: dll's tijdens opstarten windows laden
Author: Roel Schroeven
Date: Wed, 09 Jul 2003 09:29
Date: Wed, 09 Jul 2003 09:29
33 lines
2479 bytes
2479 bytes
In article <3f0bde7e$0$6524$afc38c87@sisyphus.news.be.easynet.net>, Nicolas Barbier wrote:
> KLinZ wrote:
>
>> Roel Schroeven wrote:
>>
>>> In article <beflmq.1d8.1@news.isolution.nl>, Dr.Ruud wrote:
>>>
>>>> Valt best mee, ze belanden (indien lang genoeg ongebruikt) al snel
>>>> in je swapfile.
>>>
>>> Dan heb je er ook niet veel meer aan, want dan moeten ze toch ook
>>> opnieuw in het geheugen geladen worden als je ze nodig hebt.
>>
>> Ja, maar... het laden vanuit de swapfile gaat sneller (paging weetjewel).
>
> Dat betwijfel ik, aangezien pages in je swapfile waarschijnlijk in een meer
> willekeurige volgorde gaan staan dan in het oorspronkelijke bestand.
>
> Bij een gemiddeld besturingssysteem worden de pages voor een uitvoerbaar
> bestand trouwens helemaal nooit in de swapruimte gestoken omdat ze toch
> niet beschrijfbaar zijn. Dat geldt minstens voor Windows (9x en NT), Linux,
> Mach (met een gemiddelde swapper) en voor waarschijnlijk alle BSD's.
Dat dacht ik ook al, maar ik durfde het niet zeggen wegens niet zeker.
Van Linux was ik wel 99% zeker, maar van de VM van Windows ken ik
vrijwel niets.
--
"Codito ergo sum"
Roel Schroeven
How to Ask Questions The Smart Way:
http://www.catb.org/~esr/faqs/smart-questions.html
Re: dll's tijdens opstarten windows laden
Author: Marco van de Voort
Date: Thu, 10 Jul 2003 17:07
Date: Thu, 10 Jul 2003 17:07
14 lines
1675 bytes
1675 bytes
In article <beflmq.1d8.1@news.isolution.nl>, Dr.Ruud wrote: > Roland Wolters skribis: >> dichtertje: > >>> Een aantal applicaties zoals Mozilla als deze optie opstaat laden hun >>> dll's tijdens het opstarten van windows om later het opstarten van de >>> programma's te versnellen. Weet iemand hoe dit gedaanwordt? > >> a.k.a. verspillen van recources. Ik haat dat. > > Valt best mee, ze belanden (indien lang genoeg ongebruikt) al snel > in je swapfile. .dll's belanden als code slechts in de swapfile indien ze gerelocate zijn.
Re: dll's tijdens opstarten windows laden
Author: KLinZ
Date: Thu, 10 Jul 2003 17:25
Date: Thu, 10 Jul 2003 17:25
21 lines
2136 bytes
2136 bytes
Marco van de Voort wrote: > In article <beflmq.1d8.1@news.isolution.nl>, Dr.Ruud wrote: >> Roland Wolters skribis: >>> dichtertje: >> >>>> Een aantal applicaties zoals Mozilla als deze optie opstaat laden >>>> hun dll's tijdens het opstarten van windows om later het opstarten >>>> van de programma's te versnellen. Weet iemand hoe dit gedaanwordt? >> >>> a.k.a. verspillen van recources. Ik haat dat. >> >> Valt best mee, ze belanden (indien lang genoeg ongebruikt) al snel >> in je swapfile. > > .dll's belanden als code slechts in de swapfile indien ze gerelocate > zijn. Waarom slechts dan? -- www.zenobits.com
Re: dll's tijdens opstarten windows laden
Author: Nicolas Barbier
Date: Thu, 10 Jul 2003 20:42
Date: Thu, 10 Jul 2003 20:42
14 lines
1656 bytes
1656 bytes
KLinZ wrote: > Marco van de Voort wrote: > >> .dll's belanden als code slechts in de swapfile indien ze gerelocate >> zijn. > > Waarom slechts dan? Omdat het OS ze anders gewoon terug uit het bestand kan lezen als het ze nodig heeft... -- Nicolas Barbier
Re: dll's tijdens opstarten windows laden
Author: Dr.Ruud
Date: Thu, 10 Jul 2003 22:37
Date: Thu, 10 Jul 2003 22:37
29 lines
2432 bytes
2432 bytes
Marco van de Voort skribis: > Dr.Ruud: >> Roland Wolters: >>> dichtertje: >>>> Een aantal applicaties zoals Mozilla als deze optie opstaat laden >>>> hun dll's tijdens het opstarten van windows om later het opstarten >>>> van de programma's te versnellen. Weet iemand hoe dit gedaanwordt? >>> a.k.a. verspillen van recources. Ik haat dat. >> Valt best mee, ze belanden (indien lang genoeg ongebruikt) al snel >> in je swapfile. > .dll's belanden als code slechts in de swapfile indien ze gerelocate > zijn. Met 'ongebruikt' duidde ik op het slapende bestaan van 'preloaded' dll's. Er is dus een executable die die dll(s) in gebruik houdt, alleen vinden er (nog/verder) geen calls plaats. Dan zal het memory management de geheugenruimte waarin die 'actieve' dll(s) staan, op een gegeven moment wegswappen. Een dll kan tijdens de dll-initialisatie extra geheugenblokken alloc-en. Ook die zullen in de swapfile belanden als er (nog/verder) niets mee gebeurt. -- Affijn, Ruud
Re: dll's tijdens opstarten windows laden
Author: Marco van de Voort
Date: Fri, 11 Jul 2003 14:49
Date: Fri, 11 Jul 2003 14:49
21 lines
1997 bytes
1997 bytes
In article <pjhPa.16050$KF1.302759@amstwist00>, KLinZ wrote: > Marco van de Voort wrote: >> In article <beflmq.1d8.1@news.isolution.nl>, Dr.Ruud wrote: >>> Roland Wolters skribis: >>>> dichtertje: >>> >>>>> Een aantal applicaties zoals Mozilla als deze optie opstaat laden >>>>> hun dll's tijdens het opstarten van windows om later het opstarten >>>>> van de programma's te versnellen. Weet iemand hoe dit gedaanwordt? >>> >>>> a.k.a. verspillen van recources. Ik haat dat. >>> >>> Valt best mee, ze belanden (indien lang genoeg ongebruikt) al snel >>> in je swapfile. >> >> .dll's belanden als code slechts in de swapfile indien ze gerelocate >> zijn. > > Waarom slechts dan? Omdat ze dan niet direct te reloaden zijn van HDD. (moet dan eerst weer geheel gerelocate worden)
Re: dll's tijdens opstarten windows laden
Author: Marco van de Voort
Date: Fri, 11 Jul 2003 14:53
Date: Fri, 11 Jul 2003 14:53
29 lines
2360 bytes
2360 bytes
In article <bel17d.gs.1@news.isolution.nl>, Dr.Ruud wrote: > Marco van de Voort skribis: >>> in je swapfile. > >> .dll's belanden als code slechts in de swapfile indien ze gerelocate >> zijn. > > Met 'ongebruikt' duidde ik op het slapende bestaan van 'preloaded' dll's. > Er is dus een executable die die dll(s) in gebruik houdt, alleen vinden > er (nog/verder) geen calls plaats. Dan zal het memory management de > geheugenruimte waarin die 'actieve' dll(s) staan, op een gegeven moment > wegswappen. Wat is volgens jou "wegswappen" > Een dll kan tijdens de dll-initialisatie extra geheugenblokken alloc-en. > Ook die zullen in de swapfile belanden als er (nog/verder) niets mee > gebeurt. Data segmenten e.d. wel ja. Code en inited data (read-only) segmenten worden invalidated (de frames worden als ongebruikt gemerkt, en in de descriptor tabel wordt "present" uitgezet) en indien nodig wordt het hergeladen van .DLL, niet van swap. Winst: de zoeken en open filesystem overhead. Er wordt een handle naar de DLL opengehouden dacht ik. (dus Tenzij ze door een image base conflict gerelocate moeten worden, maar dat is meestal niet)
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads