From b5ddd2abddaf3c25e0af789d4de8b2797f550b72 Mon Sep 17 00:00:00 2001 From: Chris Hanson Date: Thu, 5 Jan 1995 23:38:01 +0000 Subject: [PATCH] Add new system calls needed for OS/2 subprocess support. --- v7/src/microcode/os2top.c | 15 +++++++++++++-- v7/src/microcode/syscall.h | 11 +++++++++-- 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/v7/src/microcode/os2top.c b/v7/src/microcode/os2top.c index d18b7d231..b6f0f65f1 100644 --- a/v7/src/microcode/os2top.c +++ b/v7/src/microcode/os2top.c @@ -1,8 +1,8 @@ /* -*-C-*- -$Id: os2top.c,v 1.4 1994/12/19 22:31:44 cph Exp $ +$Id: os2top.c,v 1.5 1995/01/05 23:38:01 cph Exp $ -Copyright (c) 1994 Massachusetts Institute of Technology +Copyright (c) 1994-95 Massachusetts Institute of Technology This material was developed by the Scheme project at the Massachusetts Institute of Technology, Department of Electrical Engineering and @@ -45,12 +45,14 @@ extern void OS2_initialize_exception_handling (void); extern void OS2_initialize_keyboard_interrupts (void); extern void OS2_initialize_message_queues (void); extern void OS2_initialize_pm_thread (void); +extern void OS2_initialize_processes (void); extern void OS2_initialize_scheme_thread (void); extern void OS2_initialize_tty (void); extern void OS2_initialize_window_primitives (void); extern const char * OS_Name; extern const char * OS_Variant; +extern HMTX OS2_create_queue_lock; static const char * OS2_version_string (void); static void initialize_locks (void); @@ -87,6 +89,7 @@ OS_initialize (void) OS2_initialize_directory_reader (); OS2_initialize_tty (); OS2_initialize_window_primitives (); + OS2_initialize_processes (); OS_Name = "OS/2"; { const char * version = (OS2_version_string ()); @@ -203,6 +206,7 @@ static void initialize_locks (void) { interrupt_registers_lock = (OS2_create_mutex_semaphore (0, 0)); + OS2_create_queue_lock = (OS2_create_mutex_semaphore (0, 0)); } void @@ -1517,18 +1521,22 @@ static char * syscall_names_table [] = "dos-create-thread", "dos-delete", "dos-delete-dir", + "dos-dup-handle", + "dos-exec-pgm", "dos-exit", "dos-find-close", "dos-find-first", "dos-find-next", "dos-get-info-blocks", "dos-get-message", + "dos-kill-process", "dos-kill-thread", "dos-move", "dos-open", "dos-post-event-sem", "dos-query-current-dir", "dos-query-current-disk", + "dos-query-fh-state", "dos-query-file-info", "dos-query-fs-attach", "dos-query-fs-info", @@ -1542,13 +1550,16 @@ static char * syscall_names_table [] = "dos-request-mutex-sem", "dos-reset-event-sem", "dos-scan-env", + "dos-send-signal-exception", "dos-set-current-dir", "dos-set-default-disk", + "dos-set-fh-state", "dos-set-file-ptr", "dos-set-file-size", "dos-set-path-info", "dos-start-timer", "dos-stop-timer", + "dos-wait-child", "dos-wait-event-sem", "dos-write", "dos-write-queue", diff --git a/v7/src/microcode/syscall.h b/v7/src/microcode/syscall.h index 72669236d..09259d69b 100644 --- a/v7/src/microcode/syscall.h +++ b/v7/src/microcode/syscall.h @@ -1,8 +1,8 @@ /* -*-C-*- -$Id: syscall.h,v 1.6 1994/12/19 22:27:33 cph Exp $ +$Id: syscall.h,v 1.7 1995/01/05 23:37:26 cph Exp $ -Copyright (c) 1993-94 Massachusetts Institute of Technology +Copyright (c) 1993-95 Massachusetts Institute of Technology This material was developed by the Scheme project at the Massachusetts Institute of Technology, Department of Electrical Engineering and @@ -58,18 +58,22 @@ enum syscall_names syscall_DosCreateThread, syscall_DosDelete, syscall_DosDeleteDir, + syscall_DosDupHandle, + syscall_DosExecPgm, syscall_DosExit, syscall_DosFindClose, syscall_DosFindFirst, syscall_DosFindNext, syscall_DosGetInfoBlocks, syscall_DosGetMessage, + syscall_DosKillProcess, syscall_DosKillThread, syscall_DosMove, syscall_DosOpen, syscall_DosPostEventSem, syscall_DosQueryCurrentDir, syscall_DosQueryCurrentDisk, + syscall_DosQueryFHState, syscall_DosQueryFileInfo, syscall_DosQueryFSAttach, syscall_DosQueryFSInfo, @@ -83,13 +87,16 @@ enum syscall_names syscall_DosRequestMutexSem, syscall_DosResetEventSem, syscall_DosScanEnv, + syscall_DosSendSignalException, syscall_DosSetCurrentDir, syscall_DosSetDefaultDisk, + syscall_DosSetFHState, syscall_DosSetFilePtr, syscall_DosSetFileSize, syscall_DosSetPathInfo, syscall_DosStartTimer, syscall_DosStopTimer, + syscall_DosWaitChild, syscall_DosWaitEventSem, syscall_DosWrite, syscall_DosWriteQueue, -- 2.25.1