Page 1 of 1
How to create a dll manager in an OS
Posted: Sun May 22, 2011 8:45 am
by harmanjeet
I am beginner to OSDev. I want to create a dll manager which can load or unload the dll files. I have no idea about this. Can someone help..?
Re: How to create a dll manager in an OS
Posted: Sun May 22, 2011 1:28 pm
by gravaera
Yo:
Please first discard the idea of specifically loading "DLLs". The "DLL" is a form of what is known as a "Shared executable". There are many "Executable formats". An executable format is nothing but an encapsulating specification for presenting information about a binary file to a kernel. Generally speaking, each executable format has the following sub-types for binaries:
- Executable
- Relocatable
- Shared
What you want to learn about is "dynamic linking" of "shared executables" on program load-up. This is something you would only need to worry about when you begin writing your executable parser and loader. Basically, the executable format you choose to use for your kernel must provide a way for programs to state which shared executables are needed within its address space before it can run, and then the kernel itself must have a systematic search path so it can "know" where to look to find those shared executables. There's no real need to have a shared library "manager"; the only thing needed is for you to allow the user to tell the kernel where to look for shared libraries.
Also, you'll notice I introduced several terms to you here: they're keywords you should look up so you can begin to understand what you need to know
Google them up.
--All the best
gravaera
Re: How to create a dll manager in an OS
Posted: Sun May 22, 2011 2:07 pm
by Igor1024
'DLL manager' and 'I am beginner to OSDev' seem to be not analogous. To develop shared memory manager you firstly should have done a pile of other work... You just want to understand how does it work? Windows - bright example.
Re: How to create a dll manager in an OS
Posted: Tue May 24, 2011 10:43 am
by harmanjeet
Thanx Gravaera for the useful info. It will help.