bug-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Windows & POSIX


From: Conrad T. Pino
Subject: Windows & POSIX
Date: Mon, 21 Feb 2005 16:10:02 -0800

 
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi Derek,

New thread started from Frank Hemmer's
":ext: with ssh failure on w2k - patch"
thread.

I agree with Frank that Windows "select" implementation
accepts neither pipe nor file descriptors.

Microsoft claims POSIX compliance for Windows but IMO
it's no where near the level the UNIX world supports.

In addition to the select problem, Windows does NOT
implement "fcntl" at all.

Where "open", "read", "write", "close", etc. are kernel
functions in UNIX, the same are C run-time functions in
Windows & Visual C++ and non-blocking I/O isn't supported
at all.

I could go with details but the points I want to raise are:

1. CVS does NOT abstract POSIX low level I/O:
   "open", "read", "write", "close", "select", etc.

2. Microsoft is unlikely to advance POSIX compliance for
   Windows to be sufficiently useful.

Over the long term we're confronted with providing real
POSIX support for Windows OR dropping Windows support.
I prefer to avoid the latter.

As I see it if we are to continue down the path toward
better performance of the current "src/buffer.c" then
we should replace Microsoft's poor implementation with
our own.

Can you quickly enumerate a list of functions that we
need to replace to keep moving forward on the current
performance improvement path?

Is it sufficient to replace the problematic functions
relying on the linker to use our implementation without
using a macro such as "CVS_OPEN" for "open"?

Best regards,

Conrad

-----BEGIN PGP SIGNATURE-----
Version: PGP 7.0.4

iQA/AwUBQhp4WbNM28ubzTo9EQIkYQCgnofaeW9JueAdGFd7RaNhHa6JI8UAn3cf
vmGU3Q2PG1dmY5lUe7ELjhAi
=zUOy
-----END PGP SIGNATURE-----





reply via email to

[Prev in Thread] Current Thread [Next in Thread]