aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/drivers/win32
AgeCommit message (Collapse)Author
2011-12-09Merge branch 'raimo/64-bit-driver-api/OTP-9795'Björn Gustavsson
* raimo/64-bit-driver-api/OTP-9795: (22 commits) driver_SUITE.erl: Fix sys info drivers emulator test drivers: Conform to updated driver API runtime_tools's drivers: Conform to updated driver API ws's xwe_driver.c: Conform to updated driver API megaco's flex scanner: Conform to updated driver API seq_trace_SUITE_data/echo_drv.c: Conform to updated driver API erl_interface tests: Conform port_call_drv.c updated driver API erl_drv_thread_SUITE_data/testcase_driver.c: Conform to updated driver API float_SUITE_data/fp_drv.c: Conform to updated driver API port_SUITE_data/*_drv.c: Conform to updated driver API port_bif_SUITE_data/control_drv.c: Conform to updated driver API send_term_SUITE_data/send_term_drv.c: Conform to updated driver API system_profile_SUITE_data/echo_drv.c: Conform to updated driver API trace_port_SUITE_data/echo_drv.c: Conform to updated driver API Remove support for old drivers without ERL_DRV_EXTENDED_MARKER built-in drivers: Add ERL_DRV_EXTENDED_MARKER and version numbers Bump driver version to 2.0 erl_driver.h: Enlarge type on return value from call erl_driver.h: Enlarge types on driver callbacks output, control and call erl_driver.h: Enlarge types in driver output functions ... Conflicts: erts/emulator/test/driver_SUITE_data/monitor_drv.c erts/emulator/test/driver_SUITE_data/timer_drv.c
2011-12-09built-in drivers: Add ERL_DRV_EXTENDED_MARKER and version numbersBjörn Gustavsson
2011-12-09erl_driver.h: Enlarge types on driver callbacks output, control and callRaimo Niskanen
2011-12-08Teach windows sys_localtime_rBjörn-Egil Dahlberg
2011-12-02Fix undefined ctime for invalid file handlesBjörn-Egil Dahlberg
* ctime were never defined for invalid file handles * fix epoch <-> fileinfo conversions
2011-12-02Fix EPOCH <-> FILETIME conversionBjörn-Egil Dahlberg
2011-12-02Teach win32 efile driver epochsBjörn-Egil Dahlberg
Conflicts: erts/emulator/drivers/win32/win_efile.c
2011-12-02Iron out bugs in Win64 found in daily buildsPatrik Nyblom
Almost all uses of the 'long' datatype is removed from VM and tests Emulator test now runs w/o drivers crashing Nasty abs bug fixed in VM as well as type errors in allocator debug functions Still one allocator test that fails, domain knowledge is needed to fix that. Fix type inconsistency in beam_load causing crashes
2011-12-02Build Win64 Erlang emulator using MSYSunknown
Still does not run, just compiles.
2011-11-10Remove exec bit from files related to: XML, make, CRicardo Catalinas Jiménez
2011-05-10Add error code for cyclic symbolic links and make directory links readablePatrik Nyblom
2011-03-11Update copyright yearsBjörn-Egil Dahlberg
2011-02-09Fix win32 file drivers atime/mtimeBjörn-Egil Dahlberg
When setting file_info it will now correctly set access and modified time. Previously these entities were swapped.
2010-12-09Teach win_con.c about scroll wheelsPatrik Nyblom
2010-11-30Teach filelib to use re in unicode mode when filenames are not rawPatrik Nyblom
2010-11-30Adapt new soft and hard link routines on Windos to UnicodePatrik Nyblom
Also close find-handles in altname and other minor corrections to patch
2010-11-30Make Unicode filenames work on WindowsPatrik Nyblom
2010-11-29Merge branch 'jr/windows-file-append' into devPatrik Nyblom
* jr/windows-file-append: Fix appending to large files (>4GB) on Windows OTP-8958
2010-10-14Add Win32 support for hard and symbolic file system linksBlaine Whittle
Hard linking requires XP or later and a NTFS formatted drive. Symbolic linking requires Windows Vista, Windows Server 2008, Windows 7 or later. Symbolic linking on earlier versions of Windows will return {error, enotsup}. file:make_link/2, file:make_sym_link/2 and file:read_link/1 are all implemented. file:read_file_info/1 does NOT return the number of hard links on the file as this results in performance problems for read_file_info/1, however this can be enabled by uncommenting a few lines of code. The original path was submitted on 9/2/2009 by Alex Tearse-Doyle.
2010-09-30Fix appending to large files (>4GB) on WindowsJuhani Rankimies
Append mode doesn't work for files larger that 4GB on Windows. Caused by incorrect usage of SetFilePointer in win_efile.c. Fix uses OVERLAPPED structure to specify write position (EOF). http://msdn.microsoft.com/en-us/library/aa365747.aspx Opening file in append mode was also considered, but rejected, because it might cause backwards incompatibility by limiting applicable operations on the descriptor. SetFilePointerEx was not used because it would caused more system calls than using OVERLAPPED structure.
2010-08-17erts: Remove the unused mem_drv driverBjörn Gustavsson
The mem_drv driver was only useful when elib_malloc was active.
2010-06-04Support opening files in exclusive modeMichael Santos
Add an option that atomically tests for the existence of a file and creates it if the file does not exist, by passing the O_EXCL flag to open() on Unix and CREATE_NEW flag on Windows. Support for O_EXCL varies across platforms and filesystems. {ok, Fd} = file:open("/tmp/foo", [write,exclusive]), {error, eexist} = file:open("/tmp/foo", [write,exclusive]).
2010-06-02Windows: Open files with FILE_SHARE_DELETE to get closer to UNIX semanticsJan Lehnardt
See dwShareMode on http://msdn.microsoft.com/en-us/library/aa363858(VS.85).aspx
2010-05-24Merge branch 'fm/file-operations' into devErlang/OTP
* fm/file-operations: Update preloaded modules Add file:advise/4 - a wrapper to the POSIX syscall posix_fadvise Add file:datasync/1 for syncing file contents only sys.h: Correct the get_int64() macro OTP-8637 fm/file-operations The functions file:advise/4 and file:datasync/1 have been added. (Thanks to Filipe David Manana.)
2010-05-20Add file:advise/4 - a wrapper to the POSIX syscall posix_fadviseFilipe David Manana
Useful for informing the Operating System about the access pattern for a file's data, so that it can adapt the caching strategy to maximize disk IO performance.
2010-05-20Add file:datasync/1 for syncing file contents onlyFilipe David Manana
file:datasync/1 invokes the POSIX system call "int fdatasync(int fd)". This system call is similar to "fsync" but, unlike fsync, it does not update the metadata associated with the file (like the access time for example). It's used by many DBMSs (MySQL and SQLite of example) to increase disk IO performance, as it avoids disk seeks and disk write operations compared to fsync. More details on it at: http://linux.die.net/man/2/fdatasync An example, from the MySQL source: http://bazaar.launchpad.net/~mysql/mysql-server/mysql-5.1-telco-6.1/annotate/head%3A/mysys/my_sync.c#L61 This new function just calls fsync on systems not implementing fdatasync.
2009-11-20The R13B03 release.OTP_R13B03Erlang/OTP