<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;"><br class=""><br class=""><blockquote type="cite" class="">On 2021-02-20, at 6:51 PM, <a href="mailto:ken.dickey@whidbey.com" class="">ken.dickey@whidbey.com</a> wrote:<br class=""><br class="">Device drivers are, for me, complex and painful.<br class=""></blockquote><div class=""><br class=""></div>I don't think I've ever met anyone for whom that is not the case.<div class=""><br class=""></div><div class="">Writing an entire OS seems to me to be a Quixotic dream; why bother?  Yes, I know Dan Ingall's famous quotation -<br class=""><div class="">"An operating system is a collection of things that don't fit into a language. There shouldn't be one."</div><div class=""><br class=""></div><div class="">However, I think that one can look at this rather differently than "have no operating system". I think the practical approach is  "have nothing that doesn't fit in your language system". If we make a system that can talk to everything that an underlying OS kernel and facilities provides - device drivers, scheduling, interrupt handling, storage abstraction, network blah-blah-blah - then there is no OS as a separate thing that anyone need care about. There are no "things that don't fit into a language".</div><div class=""><br class=""></div><div class="">The simple answer to approach this quite closely and fairly painlessly is to use an install of some linux system without the X-nightmare and use the frame buffer as the Smalltalk display. Yes, sure, there are other minimal OS' that Ken pointed out too.</div><div class=""><br class=""></div><div class="">One would still need to work out how to handle all the facilities we take for granted for our daily use of a computer; a *good* email system, web browsing, assorted social media interfaces and on and on. I suggest that we also need to make it practical in this new world to have many Smalltalk images running at the same time so as to insulate said email/browser/twitter/etc from each other in case of serious problems, so we'd want some sort of (Smalltalk implemented, obviously) windowing system.</div><div class=""><br class=""></div><div class="">It's doable. I think it might take a bit more than the usual </div><div class=""><img class="rg_i Q4LuWd" data-deferred="1" jsname="Q4LuWd" data-index="0" alt="Image result for one million dollars" data-atf="true" data-iml="1084" apple-inline="yes" id="CB1B55BF-1267-4F46-BED6-E69684F7A71F" src="cid:85143344-A7D3-4048-A8EB-A58142E699E4@(null)"></div><div class=""><br class=""></div><div class=""><br class="">tim</div><div class="">PS Random number sigline chooser FTW, again!<br class="">--<br class="">tim Rowledge; <a href="mailto:tim@rowledge.org" class="">tim@rowledge.org</a>; <a href="http://www.rowledge.org/tim" class="">http://www.rowledge.org/tim</a><br class="">Porting is such sweet sorrow<br class=""><br class=""></div><br class=""></div></body></html>