The real problem here, of course, is step 2. The current TTY interface is a little brutal at times, but it's standard and a lot of programs have been written to it. A new user-space API would be painful to bring in, and we'd still have to support the old one forever.
Past history in this area is not greatly encouraging either. Solaris tried more-or-less what you suggest; the result was called "streams." If you've never had to deal with those, count your blessings.
Copyright © 2018, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds