Speeding up wineserver syncronization objects with shared memory

David Howells dhowells at cambridge.redhat.com
Wed Feb 28 07:04:42 CST 2001

I've got a lot of the wine support kernel module written now. Its system call
latency seems to be down at near half that of Win2000 for mutexes, though
there's no guarantee that my benchmark programs produce meaningful numbers.

I've also got PE Image mapping done (with pages fixed up on demand and marked
as discardable). So if anything, Wine might want to steal that if the module
as a whole is not used. This bit requires virtually no changes to the kernel
itself, just half a dozen or so extra symbols to be exported.

The module image size stands currently at about 30K.

	======================================	==========================
	General object infrastructure		done
	HANDLE infrastructure			mostly done
	Waiting calls				partly done
	Exception handling			not done
	Win32 error handling			not done, uses UNIX errno
	UNICODE handling			ignored, all ASCII
	Security handling			ignored

	Mutex objects				done
	Semaphore objects			done
	Event objects				done
	File objects (synchronous access)	mostly done
	File objects (asynchronous access)	not done
	Shared memory objects			mostly done
	Process objects				slightly done
	Thread objects				slightly done
	Registry objects			not done
	NT Port objects				not done
	NT Token objects			not done
	W2K Job objects				not done
	Net Communications			not done

	userspace access library		up to date
	strace					mostly up to date


More information about the wine-devel mailing list