Commit Graph

82 Commits

Author SHA1 Message Date
Alexandre Julliard 3d06d20bab Moved all signal support to a new platform-specific file.
Make use of the per-thread signal stack (Juergen Lock).
Fixed %fs in signal handler for non FS_sig case (Ulrich Weigand).
1999-09-27 10:58:45 +00:00
Ulrich Weigand 4d550350f3 Bugfix: Install task-entry breakpoint *after* EXE module is initialized. 1999-07-30 18:05:07 +00:00
Ulrich Weigand fbea530884 On NE process creation, move major part of NE EXE module loading and
NE instance creation into the child process.
1999-07-03 12:26:29 +00:00
Alexandre Julliard ebe29ef376 Further server optimizations:
- merged request and reply structures
- build requests directly into the buffer to avoid a copy
1999-06-26 08:43:26 +00:00
Ulrich Weigand 26c21f1f57 Load USER32.DLL before calling UserSignalProc. 1999-06-22 19:12:14 +00:00
Alexandre Julliard 0a860a01f9 Merged THDB and TEB structures.
Made SetLastError(), GetCurrentThreadId() and PROCESS_Current() inline.
1999-06-22 11:43:42 +00:00
Ulrich Weigand 23f4b09cc3 Removed broken hack to support shared DLLs (e.g. USER32.DLL) and
replaced it by a somewhat less broken hack :-/
1999-06-13 08:34:42 +00:00
Andreas Mohr cd3278be3f Rearrange winver detection code and cache the winver value we
determined in the PDB to speed up.
1999-06-12 14:46:54 +00:00
Guy Albertelli 0e65b38ff3 Add new "walk" command options to list processes and modref's. 1999-06-12 10:49:36 +00:00
Alexandre Julliard 1aa2641636 Use the normal environment routines to build the env db of the initial
process.
1999-06-11 18:33:46 +00:00
Ulrich Weigand ed49003188 16-bit scheduler reorganized: run all tasks in their own thread.
Process creation sequence adapted to new scheduler.
1999-06-06 14:47:50 +00:00
Alexandre Julliard 54a39e253c Got rid of THREAD_InitDone.
Made THREAD_Current() inline.
Moved server tid into TEB.
1999-05-29 14:27:26 +00:00
Alexandre Julliard 463fd4ffb1 Moved remaining initialisations to the new process context.
Shuffled things around a bit in PROCESS_Start to avoid deadlocks.
Changed PROCESS_CallUserSignalProc to avoid accessing another process
address space.
1999-05-24 14:44:52 +00:00
Ulrich Weigand a1957c4d64 Wait until child initialized before returning from PROCESS_Create. 1999-05-24 08:10:46 +00:00
Alexandre Julliard d131a17ee0 Use the new debug functions to send debug events at appropriate places.
Pass the process creation flags to PROCESS_Create.
1999-05-23 20:02:04 +00:00
Ulrich Weigand 158f00ed8d Bugfix: dwFlags must describe target process in UserSignalProc. 1999-05-23 09:31:49 +00:00
Ulrich Weigand c319c669fb Added ExitKernel16 (replacing USER_ExitWindows), ExitProcess16, and
MapProcessHandle; stub for BUNNY_351.
1999-05-22 16:18:36 +00:00
Ulrich Weigand 1c971e3364 Some initialization sequence bugfixes:
- Initialize process crst for 16-bit processes.
- Don't crash due to uninitialized stack frames in WineLib.
- Map system DLLs before calling UserSignalProc.
- Signal USIG_PROCESS_CREATE only *after* the env_db is filled.
1999-05-08 09:58:47 +00:00
Alexandre Julliard 64ae5a57cf Moved a few more initialisations to the new process context. 1999-05-02 19:10:57 +00:00
Alexandre Julliard e8c6a08cd9 Converted to the new debugging interface (done with the help of the
script written by Patrik Stridvall).
Some changes to the initialisation sequence for 32-bit processes.
1999-05-02 14:33:41 +00:00
Ulrich Weigand 586793ffd8 Initialize process critical section in the correct process context. 1999-04-25 11:04:45 +00:00
Patrik Stridvall b4b9fae671 New debug scheme with explicit debug channels declaration. 1999-04-19 14:56:29 +00:00
Bertho Stultiens c1d1cfe976 Reorganization of the loader to correctly load and free libraries and
implementation of load order to load different types of libraries.
1999-04-18 12:14:06 +00:00
Kevin Holbrook a8f8bef098 Fix ambiguous else warning. 1999-04-18 09:33:20 +00:00
Ulrich Weigand 9e696f8906 Non-functional PROCESS_Suspend/ResumeOtherThreads removed. 1999-04-11 17:11:09 +00:00
Ulrich Weigand 2e658768dc Send USIG_PROCESS_CREATE signal.
Bugfix: GetProcessDword offset -8 should return parent process ID.
1999-04-11 12:06:04 +00:00
Ulrich Weigand 8139c30125 Implemented PROCESS_CallUserSignalProc().
Send USER signals at various appropriate places.
Moved [GS]etProcessDword() to scheduler/process.c.
1999-04-01 11:43:05 +00:00
Ulrich Weigand e469a583ca Fixed sequence of DLL_PROCESS_DETACH notification calls.
Moved PE_MODREF flags to WINE_MODREF level.
Better handling of LoadLibraryEx flags.
PE_InitTls() changed to work only on the current thread.
1999-03-27 16:45:57 +00:00
Alexandre Julliard 1c40024b15 Added cmd line in new_process request. 1999-03-27 16:21:05 +00:00
Alexandre Julliard 875c4b3c61 Added server pid and tid in init_thread request, and use them in
CLIENT_InitThread.
1999-03-23 14:09:41 +00:00
Ulrich Weigand 93b23d746d Run Win32 processes in their own threads.
Process exit sequence adapted.
1999-03-22 10:35:44 +00:00
Alexandre Julliard f016752b45 Changed process initialisation to use the new server requests.
Started to move the process init to the right context, not finished yet.
1999-03-21 19:26:25 +00:00
Ulrich Weigand 4526f2ec66 Pass new arguments (suspend/inherit) to the server. 1999-03-16 16:28:59 +00:00
Alexandre Julliard 96c08d817c Use server handles directly for Win32 handles. Removed use of K32OBJ. 1999-02-28 13:27:56 +00:00
Alexandre Julliard 8feb3bc177 Process and thread id now use the server-side id instead of an
obfuscated pointer.
1999-02-28 12:25:03 +00:00
Ulrich Weigand 6e0d38603e Process creation sequence reorganized:
- Removed instance data segment for all but NE modules.
- Check binary type in CreateProcess before loading module.
- Unix process creation moved from WinExec to CreateProcess.
- Bugfix: fill in thdb->teb.htask16 member correctly.
1999-02-28 11:14:32 +00:00
Alexandre Julliard a396029270 Large-scale renaming of all Win32 functions and types to use the
standard Windows names.
1999-02-26 11:11:13 +00:00
Alexandre Julliard 214399f283 Changed initial process creation to avoid memory allocations.
Removed a few unused fields in PDB and THDB.
1999-02-21 18:35:27 +00:00
Marcus Meissner 317af320cf Optimized include/*.h: (recursively) include all headers needed by
this .h file, but only those. Necessary fixes to a lot of .c files,
started optimizing "windows.h" away from some of them. Moved
GetCurrentTask prototype to wine/winbase16.h.
1999-02-17 13:51:06 +00:00
Alexandre Julliard 60742b0408 Removed PROCESS_GetPtr. 1999-02-14 17:51:01 +00:00
Alexandre Julliard 62a8b43301 Hacked server-side device support
Added user APCs support.
Many changes to the xterm console to make use of the server (not
finished yet).
Moved some other small stuff to the server.
1999-01-19 17:48:23 +00:00
Alexandre Julliard 8da12c43a9 Group commit for recovery after disk crash.
See Changelog for changes WRT release 990110.
1999-01-17 16:55:11 +00:00
Alexandre Julliard 0562539d18 Implemented file sharing checks in the server.
Added set file time server request.
Overall clean up of the file handling (DOS device handling is now
broken, should be redone).
1999-01-03 11:55:56 +00:00
Alexandre Julliard eafae34251 Got rid of CLIENT_GetProcessInfo. 1999-01-01 18:59:01 +00:00
Alexandre Julliard f8e741bcbe Take into account handle inheritance flag. 1999-01-01 16:53:11 +00:00
Alexandre Julliard 55443878fc Removed client-side wait functions; all waiting is now done through
the server.
1998-12-31 15:52:06 +00:00
Patrick Spinler 3f8e1e4d44 Implemented CreateToolhelp32Snapshot, including two of the routines
using snapshots, Process32First and Process32Next.
1998-12-11 15:04:11 +00:00
James Sutherland 577db37b2a More complete implementation of the SetCtrlHandler() function (and the
related console functions).
1998-11-08 15:09:08 +00:00
Huw D M Davies d0421889c8 Get rid of the redefinition of MAX_PATH and move PROCESSENTRY32
definition to toolhelp.h.
1998-11-01 19:23:52 +00:00
Ulrich Weigand c75d0e16bd Implemented new Wine startup sequence, separating startup into
KERNEL/USER/GDI related parts, allowing native replacement.
Implemented initial 'kernel' task.
1998-11-01 17:59:35 +00:00