Lisaのマルチタスクについて、Ted Hodges氏はプリエンプティブ・マルチタスクであるとしているのですが、Wikipediaの記述 [wikipedia.org]だと(プリエンプティブではなく)協調的マルチタスクとしています。そしてさらに脚注 [wikipedia.org]で、"It is a common misconception that the Lisa OS used preemptive multitasking." (Lisa OSはプリエンプティブ・マルチタスクであるとよく誤解されている)と指摘しています。このあたり実際のところはどうなのでしょうか。
私もちょっと気になって探してみたんですが、ウェブでは技術的根拠を挙げての説明は見当たらないですね。プリエンプティブとする根拠にしても、GUIdebook > Videos > Apple Lisa at CHI 98 [guidebookgallery.org]にある内容(講演動画・書き起こし)で、Lisa開発者の一人Rod PerkinsがLisaの概要を述べる中でプリエンプティブだと言ってるのを見つけたぐらい。
So, the software that was in the machine really tried to address some of the major issues about how the machine would be robust and how we’d operate in this highly interruptive environment. So, first of all it was virtual memory underneath. We had a preemptive multitasking operating system, so it was very easy for things to switch back and forth. We also had a redundant file system underneath, which meant that the file system itself could take simple hits from either bad floppy disk or bad disk blocks, and still be robust enough to get the person’s data back.
ところでこの講演動画、ファイルサイズの小さいDigiBarn TV [digibarn.com]版(122MB、全45:47)の方で見たんですが、もう一人の講演者・開発者Frank LudolphがTed君のレビューで説明されている機能を実演しており(09:30-35:00あたり)、こちらも参考になると思います。
Lisaのマルチタスク (スコア:1)
Lisaのマルチタスクについて、Ted Hodges氏はプリエンプティブ・マルチタスクであるとしているのですが、Wikipediaの記述 [wikipedia.org]だと(プリエンプティブではなく)協調的マルチタスクとしています。そしてさらに脚注 [wikipedia.org]で、"It is a common misconception that the Lisa OS used preemptive multitasking." (Lisa OSはプリエンプティブ・マルチタスクであるとよく誤解されている)と指摘しています。このあたり実際のところはどうなのでしょうか。
Re:Lisaのマルチタスク (スコア:1)
私もちょっと気になって探してみたんですが、ウェブでは技術的根拠を挙げての説明は見当たらないですね。プリエンプティブとする根拠にしても、GUIdebook > Videos > Apple Lisa at CHI 98 [guidebookgallery.org]にある内容(講演動画・書き起こし)で、Lisa開発者の一人Rod PerkinsがLisaの概要を述べる中でプリエンプティブだと言ってるのを見つけたぐらい。
Wikipediaの「Lisa OS」という記述自体、本当にLisa Office Systemを指しているのか怪しいような、実はLisa Monitorとか別のOSのことなんじゃないかという気もするんですが、実際のところどうなんでしょう。
ところでこの講演動画、ファイルサイズの小さいDigiBarn TV [digibarn.com]版(122MB、全45:47)の方で見たんですが、もう一人の講演者・開発者Frank LudolphがTed君のレビューで説明されている機能を実演しており(09:30-35:00あたり)、こちらも参考になると思います。
Re:Lisaのマルチタスク (スコア:2, 興味深い)
で、Operating Systemのリファレンス [sunder.net]を見ると、実行中のプロセスがCPUを失うのは以下の場合となっています。
Operating Systemは上の場合を除き、実行中のプロセスから強制的にCPUを取り上げることはできないので、バックグラウンドプロセスはYIELD_CPUコールをまめに使う必要があると書かれています。
MultiFinder導入の頃のMacに比べればきめ細かな制御が可能なようですが、協調的マルチタスクのようですね。
Re:Lisaのマルチタスク (スコア:1)
おっと、変な例を書いてしまった。Lisa Monitorがマルチタスクかどうかは知らないです。