Re: portfs and port_send_event

From: Mladen Gogala <>
Date: Sun, 15 Apr 2018 16:49:19 -0400
Message-ID: <>

I believe that it's "kernel service asynchronous system trap". If you remember Steve Adams internals book, Steve was talking about "blocking AST" and "non-blocking AST"  entities, without explaining what those entities were. Having been a VAX/VMS system administrator for years, I know those terms very well. Now, Oracle has preserved its VAX/VMS roots to this day, not only in "AFIEDT.BUF" files but also in terminology. AST or "asynchronous system trap" was a very sophisticated mechanism through which an external code could be executed within the process context. There was AST interrupt and an associated register in the NVAX family of processors. As opposed to Intel-like CPU family which only has two CPU modes (kernel and user), NVAX family of processors had 4 (user, supervisor, executive and kernel). Each "change mode" instruction was a privileged system trap and, if my memory serves me right, AST was running as an exec mode code. File system, called "Files-11" was also running in Exec mode.  Steve has never made any attempt to clarify how AST can be used in a Unix context and a later discussion with Howard Rogers of the "Dizwell" fame partly explained why.

However, all these notions were completely strange and unfamiliar to the Unix administrators because Unix had no such thing as AST and still doesn't have anything like that. Unix signals are nothing like AST because no external code can be delivered. However, Oracle has developed a sophisticated emulation, based on sockets. and I believe that x$ksast keeps track of those "Unix AST" thingies, whatever they might be. Once again, this is only an assumption. I have not had any confirmation for that assumption.


For those who don't know, "AFIEDT.BUF" comes from Oracle v4 on VAX/VMS. The "AFI" was "A Friendly Interface" tool, a precursor to sqlplus, and EDT was VAX/VMS screen editor. There was a wide variety of "sqlplus" competing tools: sqldba (V6, V7), svrmgrl (V8) and the latest one is sqlcl, which is currently my favourite. There was a new 18.1 release on the last Thursday, 04/12/2018.  I tested it against Oracle 11.2, Oracle 12.1 and Oracle 12.2 and it works like a charm.

On 04/15/2018 08:54 AM, Frits Hoogland wrote:
> There is some sort of administration kept in x$ksast (kernel service
> asynchronous messages state?)

Mladen Gogala
Database Consultant
Tel: (347) 321-1217

Received on Sun Apr 15 2018 - 22:49:19 CEST

Original text of this message