#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/io.scm,v 14.21 1991/03/10 22:42:23 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/io.scm,v 14.22 1991/03/11 23:48:00 cph Exp $
Copyright (c) 1988-91 Massachusetts Institute of Technology
(ucode-primitive channel-close 1)
(ucode-primitive channel-nonblocking 1)
(ucode-primitive channel-read 4)
+ (ucode-primitive channel-register 1)
+ (ucode-primitive channel-registered? 1)
+ (ucode-primitive channel-select-then-read 4)
+ (ucode-primitive channel-unregister 1)
(ucode-primitive channel-write 4)
(ucode-primitive file-length-new 1)
(ucode-primitive file-position 1)
(channel-nonblocking channel)))))))
(thunk)))
+(define (channel-registered? channel)
+ ((ucode-primitive channel-registered? 1) (channel-descriptor channel)))
+
+(define (channel-register channel)
+ ((ucode-primitive channel-register 1) (channel-descriptor channel)))
+
+(define (channel-unregister channel)
+ ((ucode-primitive channel-unregister 1) (channel-descriptor channel)))
+
+(define (channel-select-then-read channel buffer start end)
+ ((ucode-primitive channel-select-then-read 4) (channel-descriptor channel)
+ buffer start end))
+
(define (channel-table)
(fluid-let ((traversing? true))
(without-interrupts
#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/process.scm,v 1.9 1991/03/09 21:33:31 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/process.scm,v 1.10 1991/03/11 23:48:06 cph Exp $
Copyright (c) 1989-91 Massachusetts Institute of Technology
\f
(define subprocesses)
(define scheme-subprocess-environment)
+(define global-status-tick)
(define (initialize-package!)
(reset-package!)
(define (reset-package!)
(set! subprocesses '())
(set! scheme-subprocess-environment ((ucode-primitive scheme-environment 0)))
+ (set! global-status-tick (cons false false))
unspecific)
(define (subprocess-list)
(set-subprocess-%status-tick! process tick)
tick)))
+(define (subprocess-global-status-tick)
+ (without-interrupts
+ (lambda ()
+ (if ((ucode-primitive process-status-sync-all 0))
+ (let ((tick (cons false false)))
+ (set! global-status-tick tick)
+ tick)
+ global-status-tick))))
+
(define (convert-subprocess-status status)
(case status
((0) 'RUNNING)
((2) 'EXITED)
((3) 'SIGNALLED)
(else (error "Illegal process status:" status))))
-
+\f
(define (subprocess-job-control-status process)
(let ((n
((ucode-primitive process-job-control-status 1)
(define (subprocess-stop process)
((ucode-primitive process-stop 1) (subprocess-index process)))
-\f
+
(define (start-batch-subprocess filename arguments environment)
(make-subprocess filename arguments environment
false false false false
#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/runtime.pkg,v 14.97 1991/03/10 22:42:32 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/runtime.pkg,v 14.98 1991/03/11 23:48:12 cph Exp $
Copyright (c) 1988-91 Massachusetts Institute of Technology
channel-port
channel-read
channel-read-block
+ channel-register
+ channel-registered?
+ channel-select-then-read
+ channel-unregister
channel-table
channel-type
channel-type=block-device?
subprocess-exit-reason
subprocess-filename
subprocess-get
+ subprocess-global-status-tick
subprocess-id
subprocess-input-channel
subprocess-input-port
#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/version.scm,v 14.111 1991/03/10 22:43:02 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/version.scm,v 14.112 1991/03/11 23:48:20 cph Exp $
Copyright (c) 1988-91 Massachusetts Institute of Technology
'()))
(add-system! microcode-system)
(add-event-receiver! event:after-restore snarf-microcode-version!)
- (add-identification! "Runtime" 14 111))
+ (add-identification! "Runtime" 14 112))
(define microcode-system)
#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v8/src/runtime/runtime.pkg,v 14.97 1991/03/10 22:42:32 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v8/src/runtime/runtime.pkg,v 14.98 1991/03/11 23:48:12 cph Exp $
Copyright (c) 1988-91 Massachusetts Institute of Technology
channel-port
channel-read
channel-read-block
+ channel-register
+ channel-registered?
+ channel-select-then-read
+ channel-unregister
channel-table
channel-type
channel-type=block-device?
subprocess-exit-reason
subprocess-filename
subprocess-get
+ subprocess-global-status-tick
subprocess-id
subprocess-input-channel
subprocess-input-port