軽量マークアップ言語, 非同期処理, メモリ管理, ROS
その他
OutlineTextは, プレーンテキストの段階で文章のアウトラインを分かりやすくするために開発された軽量マークアップ言語です. 他の軽量マークアップ言語(Markdown, AsciiDoc, ReStructuredText, …)と異なり, インデントは文章の階層構造を表します. このことで, 文章の階層構造が視覚的にわかりやすくなります.
OutlineTextの実行例をご覧になりたい時はこのウェブページを参照してください. このウェブページはすべてOutlineTextで書かれています. OutlineTextのプレーンテキストは, ウェブページ右下にあるこのページのソースコードを表示
をクリックすることで, 確認できます.
すぐに試してみたい方は, 以下のページから
すぐに試す
ここでは, OutlineTextの特徴を示します.
OutlineTextの特徴は以下のとおりです.
- プレーンテキストでの見た目がそのままウェブページに反映
- 文章のアウトラインを見えやすく
- 見た目が分かりやすい文章は,読みやすく書きやすい
ここでは, OutlineText の文法を示していきます. 基本的に Markdown と似せていますが, インデントに対する挙動が異なります. 見やすい文章を書くことを注意すれば, OutlineText は自然に解釈し構造化します.
本稿では, コードをハイライトするライブラリSyntaxHighlighterの非同期読み込み方法について説明します.
本稿では, コードをハイライトするライブラリSyntaxHighlighterの非同期読み込み方法について説明します.
豆知識
Pipenv仮想パッケージ環境上でROS2ノードを動かす.
本稿では, スレッドプールの仕組みを理解して, C++を用いて, スレッドプールを自身で実装できることを目指します. 対応環境は, C++14 からを想定しています.
本稿では, スレッドプールの仕組みを理解して, C++を用いて, スレッドプールを自身で実装できることを目指します. 対応環境は, C++14 からを想定しています.
本来手動でメモリ管理しなければならない動的なオブジェクトを、スコープによって自動でメモリ管理するもの。
本来手動でメモリ管理しなければならない動的なオブジェクトを、スコープによって自動でメモリ管理するもの。
OSはタスクごとにメモリを動的に割り当てる必要があります(タスクが保有するメモリに関することはのちに説明します). というのも, これらのタスクはアプリケーション実行中に生成, 削除される可能性があるからです.
今回では, このメモリ管理をOSが行うことにします. OSがメモリ管理を行うことで, OS動作の理解がしやすくなるからです.
このページでは, OSによるメモリ管理をどのように実装するのか説明します.
豆知識
Pipenv仮想パッケージ環境上でROS2ノードを動かす.
ここには,ROS2に関する情報が書かれます.
ここでは, 実際にタスクが作成されたときのメモリの構造を示していきたいと思います. メモリでの各領域の説明, この構造によるmallocの問題を示します.
RTOSは, 組み込み系のシステムで用いられることが多いです.
一般OSと同様にタスクの切り替えを行う点は同じですが, タスクの切り替え規則に特色があります[1]. タスクの実行可能状態になるまでの時間の最悪値が保証されるように作られています.
OSはタスクごとにメモリを動的に割り当てる必要があります(タスクが保有するメモリに関することはのちに説明します). というのも, これらのタスクはアプリケーション実行中に生成, 削除される可能性があるからです.
今回では, このメモリ管理をOSが行うことにします. OSがメモリ管理を行うことで, OS動作の理解がしやすくなるからです.
このページでは, OSによるメモリ管理をどのように実装するのか説明します.
ここでは, 実際にタスクが作成されたときのメモリの構造を示していきたいと思います. メモリでの各領域の説明, この構造によるmallocの問題を示します.
Pipenv仮想パッケージ環境上でROS2ノードを動かす.
ここでは, 実際にタスクが作成されたときのメモリの構造を示していきたいと思います. メモリでの各領域の説明, この構造によるmallocの問題を示します.
RTOSは, 組み込み系のシステムで用いられることが多いです.
一般OSと同様にタスクの切り替えを行う点は同じですが, タスクの切り替え規則に特色があります[1]. タスクの実行可能状態になるまでの時間の最悪値が保証されるように作られています.