On Sun, 30 Jan 2005, Dan Ch wrote: > I noticed that cygwin-1.5.12-1/winsup/cygwin/fhandler.cc > uses NtCreateFile() instead of CreateFile() on Windows NT based > operating systems (NT, 2000, 2003, XP) for opening files. Why? I > checked the archives for this mailing list and noted some activity > that discuses some side affects caused by using NtCreateFile() > instead of CreateFile() such as being able to use file names that are > off limits to normal Windows applications. But I could not find > anything that explains the benefits of using NtCreateFile() instead > of CreateFile(). >
IIRC, NtCreateFile is significantly cheaper if you already have a file handle, especially on network drives where the name to handle translation and open are fairly expensive. The original reason was purely performance (since I believe my company paid for some of this optimization). -- Brian Ford Senior Realtime Software Engineer VITAL - Visual Simulation Systems FlightSafety International the best safety device in any aircraft is a well-trained pilot... -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/