アカウント名:
パスワード:
今や組込みすらRTOSが必要なレベルだと32bit系だし、今でも8bit使ってるようなものって、リソース厳しくてRTOSなしだよねぇ。
OS-9/6809 Level1 [roug.org]とか、実メモリが64KBなくても結構動いたようですし。実際、メインRAM領域が62KB程度の富士通 FM-7 [fm-7.com]でも、使おうと思えば結構使えたんですよね。マルチユーザ・マルチタスクで。
しかも、アプリをPascalっぽい構造化BASIC(実際、UCSD-Pのように独自中間コードに変換してて、ネィティブなマシン語にはコンパイルしていなかった)のBASIC09 [syakazuka.com]コンパイラで書いたりとかも出来た。# MMUが使えると、より大きなメモリ空間と、ハードウェアでのプロセス保護が出来るLevel2と言うのもあって、確か768KBの拡張メモリとかも売りださ
Z80でPIC(position-independent code)で、リエントラントなコードを書くのって難しくない?
# とは云え、PICでリエントラントである事が、OS-9/6809のフットプリントを小さくするのに、どれ位寄与したかは謎。
>Z80でPIC(position-independent code)で、リエントラントなコードを書くのって難しくない?8個あるRST命令の一つを強制すればできなくも無いんじゃないかとRST XXDW $ - JUMP_LABELとかRST XXDB CONDITION_JP_INSTRUCTIONDW $-JUMP_LABELとか前者でRST XXの先でRST命令をJPへ書き換えてスタックの戻りアドレスを一つ前に書き換えでRST命令のアドレスに差し戻すか後者でアドレス計算してからRST XXをNOPに書き換えてから戻れば継続処理できる。初回実行だけど遅いけど(キャッシュが無いCPUだから問題無い)
#これ書いてあったの月刊ASCIIかBit別冊のどれかだけどうろ覚えだなぁ
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
ソースを見ろ -- ある4桁UID
しかし何に使うんだろう (スコア:0)
今や組込みすらRTOSが必要なレベルだと32bit系だし、今でも8bit使ってるようなものって、リソース厳しくてRTOSなしだよねぇ。
つ【OS-9】(Re:しかし何に使うんだろう (スコア:1)
OS-9/6809 Level1 [roug.org]とか、実メモリが64KBなくても結構動いたようですし。
実際、メインRAM領域が62KB程度の富士通 FM-7 [fm-7.com]でも、使おうと思えば結構使えたんですよね。マルチユーザ・マルチタスクで。
しかも、アプリをPascalっぽい構造化BASIC(実際、UCSD-Pのように独自中間コードに変換してて、ネィティブなマシン語にはコンパイルしていなかった)のBASIC09 [syakazuka.com]コンパイラで書いたりとかも出来た。
# MMUが使えると、より大きなメモリ空間と、ハードウェアでのプロセス保護が出来るLevel2と言うのもあって、確か768KBの拡張メモリとかも売りださ
Re: (スコア:0)
Z80でPIC(position-independent code)で、リエントラントなコードを書くのって難しくない?
# とは云え、PICでリエントラントである事が、OS-9/6809のフットプリントを小さくするのに、どれ位寄与したかは謎。
Re:つ【OS-9】(Re:しかし何に使うんだろう (スコア:0)
>Z80でPIC(position-independent code)で、リエントラントなコードを書くのって難しくない?
8個あるRST命令の一つを強制すればできなくも無いんじゃないかと
RST XX
DW $ - JUMP_LABEL
とか
RST XX
DB CONDITION_JP_INSTRUCTION
DW $-JUMP_LABEL
とか
前者でRST XXの先でRST命令をJPへ書き換えてスタックの戻りアドレスを一つ前に書き換えでRST命令のアドレスに差し戻すか
後者でアドレス計算してからRST XXをNOPに書き換えてから戻れば継続処理できる。
初回実行だけど遅いけど(キャッシュが無いCPUだから問題無い)
#これ書いてあったの月刊ASCIIかBit別冊のどれかだけどうろ覚えだなぁ