@inproceedings{oai:ipsj.ixsq.nii.ac.jp:00091436, author = {吉原, 陽香 and 笹田, 耕一 and 佐藤, 未来子 and 並木, 美太郎 and Haruka, Yoshihara and Koichi, Sasada and Mikiko, Sato and Mitaro, Namiki}, book = {第52回プログラミング・シンポジウム予稿集}, month = {Jan}, note = {本稿では、RubyOSというRubynite記述されるOSの構成法と、現在までの実装について述べる。RubyOSでは資源管理を可能な限りRubyを用いて記述することを目標としており、Rubyの言語仕様にない、例えば実メモリやI/Oポートへのアクセスなどの処理を行う際には拡張ライブラリを用いて処理系を拡張して利用する。RubyでOSを記述することにより、例外処理や動的型付け、オブジェクト指向による記述によって開発効率や安全性に優れたOSを実装することを目標としている。またRuby処理系にはVMが組み込まれており、このVMによる実行を行うことでさらに安全性の高いOSを記述できると考えている。このRubyOSの試作として、キーボードとテキストVRAMのドライバをRubyで記述し、それらを利用して入力された文字をRubyスクリプトとして実行するプログラムをRubyにて記述した。実行基盤については、既存のRuby処理系をOSを搭載していないハードウェア上で直接実行できるように移植した。OSを記述するために必要となる、実メモリアクセス・I/OポートアクセスといったRubyの言語仕様にない機能は、拡張ライブラリを自作して実装した。評価としていくつかのプログラムの実行時間の計測を行い、RubyがOSを記述するのに十分な機能を持っているか検討した。, This presentation describes a design of the ’RubyOS’ operating system with programming language Ruby. The goal of this study is to construct resource management with Ruby, but some functions which can’t be executed by this language are implemeted with Ruby ex-tension libraries with C. Some feature of Ruby, such as exception handling, dynamic typing, object-oriented language and Ruby VM contribute to safely execution of RubyOS. For building RubyOS, the CRuby interpreter was revised and executed directly on a PC/AT compatible machine without OS. The Ruby extension libraries were implemented for physical memory and I/O port access in Ruby. In evalution, The CRuby interpreter performances were mesured on PC/AT compatible machine without OS and with Ubuntu 9.04. As the result, this Ruby environment has performance enough to build operating system.}, pages = {133--144}, publisher = {情報処理学会}, title = {RubyによるOSの構築を目指して}, volume = {2011}, year = {2011} }