オセロ, no-index, 文字列処理, Queue, ボット, リアルタイムOS, ROS
その他
オセロです. 遊びで作ったものなので, きれいにできている自信はありません.
より多くの石をひっくり返した方が勝利です.
遊ぶには, pythonの環境が必要です.
AI搭載で一人でも遊べます. (貧弱なAIですので改良しちゃってください.)
Pipenv仮想パッケージ環境上でROS2ノードを動かす.
オセロです. 遊びで作ったものなので, きれいにできている自信はありません.
より多くの石をひっくり返した方が勝利です.
遊ぶには, pythonの環境が必要です.
AI搭載で一人でも遊べます. (貧弱なAIですので改良しちゃってください.)
オセロです. 遊びで作ったものなので, きれいにできている自信はありません.
より多くの石をひっくり返した方が勝利です.
遊ぶには, pythonの環境が必要です.
AI搭載で一人でも遊べます. (貧弱なAIですので改良しちゃってください.)
ここには, TwitterBotに関することが書かれます.
筆者が現在作成中のTwitterボットは以下のリンクからBOTのたまり場
目的は以下のとおりです.
- 誰もが簡単にTwitterBOTを導入できるような枠組みを提案すること
- 自然な会話ができること
- 自動で学習すること
C#からC++に入った人もいるでしょう. その時C#で大変よく使っていたStringが恋しい場合があります. C++を書きつつC#を感じたい時があります.
上の問題を解決する方法でここで紹介するStringがあります. このStringで用意されている関数名はほぼC#と一致します.
C#で非常に便利だったSplit関数も用意されています.
また, 文字列探索において一番高速とされるBM法を用いています.
Stringを強化, 改良何でもしてください. ( `ー´)ノ
C#のStringを使ったことがない方は, これをお勧めすることはできません. これと同様かそれ以上の機能を持つC++のstringをお使いください. C++ですでに用意されています.
サイズ固定の待ち行列ライブラリを紹介します.
このQueueは, 以下の特徴を持ちます.
- std::queue が使用できない状況下での待ち行列の使用
- メモリを贅沢に使用しないサイズ固定待ち行列
- 例外処理に対応していない環境下での使用
C#からC++に入った人もいるでしょう. その時C#で大変よく使っていたStringが恋しい場合があります. C++を書きつつC#を感じたい時があります.
上の問題を解決する方法でここで紹介するStringがあります. このStringで用意されている関数名はほぼC#と一致します.
C#で非常に便利だったSplit関数も用意されています.
また, 文字列探索において一番高速とされるBM法を用いています.
Stringを強化, 改良何でもしてください. ( `ー´)ノ
C#のStringを使ったことがない方は, これをお勧めすることはできません. これと同様かそれ以上の機能を持つC++のstringをお使いください. C++ですでに用意されています.
サイズ固定の待ち行列ライブラリを紹介します.
このQueueは, 以下の特徴を持ちます.
- std::queue が使用できない状況下での待ち行列の使用
- メモリを贅沢に使用しないサイズ固定待ち行列
- 例外処理に対応していない環境下での使用
OSは日常のあらゆる場所で目にします. パソコンには必ずと言っていいほどOSが走っており, 携帯, ゲーム機などにもOSが走っております. このような普段よく使うOSですが, そのOSの仕組みを分かっていても, 実際どのように作るのかはよく知られておらず気になります.
このページでは, 実際にArduinoで動くOSを作成することで, OSの理解を深めます. 使用するプログラミング言語はC言語です. (作成といいましても, すでに在りますFreeRTOSから必要な機能を抜き出し, Arduinoで動くようにしました.) なお, 今回扱うOSは汎用OSではなくリアルタイムOS(RTOS)と呼ばれるものです. 汎用OSとは, すべてのタスクに等しく優先度が与えられますが, RTOSではタスクごとに優先度を設定できます.
話の進め方ですが, 今回のOS製作では実装に重きを置くため, コードを中心に話を進めていきます. 各コードごとに簡単な説明を行い, その中で特に重要な部分―OSの仕組みに深くかかわる部分―もしくはさらに詳しい説明については別ページで行います. これら別ページ―詳細ページ―は子コンテンツである"仕組み"にまとめられています.
話の流れは次のとおりです.
- RTOSとは
- 目標と使い方
- 準備
- ファイル構成
- スクリプト
- ボードの設定
- 仕組み
対応状況
- Arduino UNO
- Arduino Mega
動作確認済み環境
- Arduino IDE 1.8.10
- Arduino AVR Boards 1.8.1
RTOSは, 組み込み系のシステムで用いられることが多いです.
一般OSと同様にタスクの切り替えを行う点は同じですが, タスクの切り替え規則に特色があります[1]. タスクの実行可能状態になるまでの時間の最悪値が保証されるように作られています.
OSは日常のあらゆる場所で目にします. パソコンには必ずと言っていいほどOSが走っており, 携帯, ゲーム機などにもOSが走っております. このような普段よく使うOSですが, そのOSの仕組みを分かっていても, 実際どのように作るのかはよく知られておらず気になります.
このページでは, 実際にArduinoで動くOSを作成することで, OSの理解を深めます. 使用するプログラミング言語はC言語です. (作成といいましても, すでに在りますFreeRTOSから必要な機能を抜き出し, Arduinoで動くようにしました.) なお, 今回扱うOSは汎用OSではなくリアルタイムOS(RTOS)と呼ばれるものです. 汎用OSとは, すべてのタスクに等しく優先度が与えられますが, RTOSではタスクごとに優先度を設定できます.
話の進め方ですが, 今回のOS製作では実装に重きを置くため, コードを中心に話を進めていきます. 各コードごとに簡単な説明を行い, その中で特に重要な部分―OSの仕組みに深くかかわる部分―もしくはさらに詳しい説明については別ページで行います. これら別ページ―詳細ページ―は子コンテンツである"仕組み"にまとめられています.
話の流れは次のとおりです.
- RTOSとは
- 目標と使い方
- 準備
- ファイル構成
- スクリプト
- ボードの設定
- 仕組み
対応状況
- Arduino UNO
- Arduino Mega
動作確認済み環境
- Arduino IDE 1.8.10
- Arduino AVR Boards 1.8.1
豆知識
ここには,ROS2に関する情報が書かれます.
Pipenv仮想パッケージ環境上でROS2ノードを動かす.
RTOSは, 組み込み系のシステムで用いられることが多いです.
一般OSと同様にタスクの切り替えを行う点は同じですが, タスクの切り替え規則に特色があります[1]. タスクの実行可能状態になるまでの時間の最悪値が保証されるように作られています.
Pipenv仮想パッケージ環境上でROS2ノードを動かす.