Eric Pouech wrote:
S17: I would complement "re-implementing" by the fact we translate Win calls into local OS calls (mostly)
Please remeber these are slides that accompanied a two hours lecture. We are reimplementing Win32. We are using "backend" engines for the actual work (as Wine is not an OS). One such backend is Posix X11. Another is ncurses. A third is whatever you would call what ReactOs are using.
S20: I'm a bit confused with "all win32 Dlls are implemented as winelib apps". Firstly, a DLL is not an app. Secondly, from a pure technical point of view, we're talking here of two different things:
- win32 builtin DLLs are implemented as specific ELF shared library.
The PE loader, when loading DLL, is able to load either builtin DLL or windows native DLLs.
- a winelib app, is an ELF executable (not shared library), which is
able to execute as a Win32 application (loading DLLs, calling into (native/builtin) DLLs).
Like Dimi said, a winelib app is an ELF DLL that is capable of executing both Posix and Win32 functions. It cannot load itself, and needs Wine to load it. Wine's builtin DLLs are no different, except they usually don't have a wrapper.
The wording here is perhaps short enough for a generic presentation, but it's IMO rather confusing.
I rather think it's real life that is confusing :-)
as a more generic comment, what about adding a couple of screen shots ? (just to complement on the alpha side of Wine => "it does work in lots of cases")
These slides are part of a lecture. Screenshots pale in comparison to actually loading IE and Word.
anyway, I think it would be good to share those slides (there are already a couple of them on WineHQ) if we want to keep on making this type of presentations to LUG and other events.
That's why I posted them (I wrote them anyways, and someone may find the useful).
Shachar