目次
状態リスト | タスク管理

それぞれのタスクにはそのタスクの状態というものがあります. 今回のOSでは, このタスクの状態を状態リストを用いて判別することにします. 以下から, タスク状態の種類, 状態リストの構造, リストを用いたタスク状態の切り替え方法を詳しく見ていきます.

Heap4.c | スクリプティング

各タスクごとに割り当てられるメモリの管理

クラウドミュージックプレイヤー
Cloud Music Box - クラウドストレージからの音楽再生Webアプリ(PWA) | アプリケーション一覧
Cloud Music Box
Cloud Music Box

Cloud Music Boxは、クラウドストレージ(OneDrive, Google Drive)から音楽を再生、より音楽を感じ楽しむように設計されたPWA音楽プレイヤーです。

以下の特徴を持ちます。

  • PWAとして、多くのプラットフォーム(Windows, macOS, iOS, Android)上で同様のユーザ体験を実現
  • 一元管理されたクラウドストレージからの再生で、プレイヤーごとに音楽を同期する必要なし
  • オフラインでも、ダウンロード済みの音楽は再生可能
  • アプリがバックグラウンドにある場合でも、音楽の連続再生が可能(iOSのみ動作しないことがある)
  • 独自の非線形ビジュアライザを備え、プレイヤー全体が音楽に合わせてダイナミックに変化
音楽, 音楽再生
Cloud Music Box - クラウドストレージからの音楽再生Webアプリ(PWA) | アプリケーション一覧
Cloud Music Box
Cloud Music Box

Cloud Music Boxは、クラウドストレージ(OneDrive, Google Drive)から音楽を再生、より音楽を感じ楽しむように設計されたPWA音楽プレイヤーです。

以下の特徴を持ちます。

  • PWAとして、多くのプラットフォーム(Windows, macOS, iOS, Android)上で同様のユーザ体験を実現
  • 一元管理されたクラウドストレージからの再生で、プレイヤーごとに音楽を同期する必要なし
  • オフラインでも、ダウンロード済みの音楽は再生可能
  • アプリがバックグラウンドにある場合でも、音楽の連続再生が可能(iOSのみ動作しないことがある)
  • 独自の非線形ビジュアライザを備え、プレイヤー全体が音楽に合わせてダイナミックに変化
CloudMusicBox - Privacy Policy | Cloud Music Box - クラウドストレージからの音楽再生Webアプリ(PWA)

Cloud Music Box is a web application for playing music files stored in cloud storage services (Google Drive, OneDrive). This Privacy Policy explains how our application collects, uses, and protects your personal information.

アプリ
Cloud Music Box - クラウドストレージからの音楽再生Webアプリ(PWA) | アプリケーション一覧
Cloud Music Box
Cloud Music Box

Cloud Music Boxは、クラウドストレージ(OneDrive, Google Drive)から音楽を再生、より音楽を感じ楽しむように設計されたPWA音楽プレイヤーです。

以下の特徴を持ちます。

  • PWAとして、多くのプラットフォーム(Windows, macOS, iOS, Android)上で同様のユーザ体験を実現
  • 一元管理されたクラウドストレージからの再生で、プレイヤーごとに音楽を同期する必要なし
  • オフラインでも、ダウンロード済みの音楽は再生可能
  • アプリがバックグラウンドにある場合でも、音楽の連続再生が可能(iOSのみ動作しないことがある)
  • 独自の非線形ビジュアライザを備え、プレイヤー全体が音楽に合わせてダイナミックに変化
CloudMusicBox - Privacy Policy | Cloud Music Box - クラウドストレージからの音楽再生Webアプリ(PWA)

Cloud Music Box is a web application for playing music files stored in cloud storage services (Google Drive, OneDrive). This Privacy Policy explains how our application collects, uses, and protects your personal information.

QR-Universal Scanner: ブラウザで動作するQRコード読み取りウェブアプリ | Webツール

QR-Universal Scanner は, ブラウザ上で動作する, インストール不要多くの入力方法(カメラとクリップボード)に対応したQRコード[注 1]読み取りWebアプリです. PWAに対応しておりオフラインでも動作します.

QRコードを標準で読み取れるデバイスがありますが, 主にモバイル端末に多く[1][2], PC上でQRコードを読み込むためにはアプリをインストールする必要があります[3][4][5][6][7].

インストール不要のQRコード読み取りアプリもあります[8][9][10][11][12]が, ファイルのみ, もしくはカメラのみからの読み込みであったりと, 入力方法が限定されています.

本稿では, インストール不要で多くの入力方法に対応したQRコード読み取りWebアプリ QR-Universal Scanner を紹介します. PWAに対応しており, オフラインでも動作します.

ウェブアプリ, QRコード, ツール
QR-Universal Scanner: ブラウザで動作するQRコード読み取りウェブアプリ | Webツール

QR-Universal Scanner は, ブラウザ上で動作する, インストール不要多くの入力方法(カメラとクリップボード)に対応したQRコード[注 1]読み取りWebアプリです. PWAに対応しておりオフラインでも動作します.

QRコードを標準で読み取れるデバイスがありますが, 主にモバイル端末に多く[1][2], PC上でQRコードを読み込むためにはアプリをインストールする必要があります[3][4][5][6][7].

インストール不要のQRコード読み取りアプリもあります[8][9][10][11][12]が, ファイルのみ, もしくはカメラのみからの読み込みであったりと, 入力方法が限定されています.

本稿では, インストール不要で多くの入力方法に対応したQRコード読み取りWebアプリ QR-Universal Scanner を紹介します. PWAに対応しており, オフラインでも動作します.

OS
仕組み | Arduino上で走るOSの作り方

ここには, OSの仕組みに関する情報が書かれます. OSは非常に多くのことが関わっているため以下のように分けていきます.

  • メモリ管理
  • タスク管理
  • OSの設定
  • Arduino標準機能との融合
OSの設定 | 仕組み

ここでは, OSの設定方法について説明します.

設定ファイルは,ArduinOSConfig.hです. このファイル内にOSの設定を書きます. また, 設定ではハードウェアの基本構成に加え, 各機能の有効化, システムフックを行うか, などといった設定を行えます.

スクリプティング | Arduino上で走るOSの作り方

ここから, OSのソースファイル, ヘッダファイルを順番に実装していきます.

実装するファイルは次のとおりです.

  • Heap4.c
  • List.c
  • List.h
  • ArduinOS.h
  • ArduinOSConfig.h
  • ArduinOSConfigAtmega328P.h
  • ArduinOSConfigAtmega2560.h
  • Port.c
  • Portable.h
  • PortMacro.h
  • ProjDefs.h
  • Queue.c
  • Queue.h
  • Semaphore.h
  • StackMacros.h
  • Task.c
  • Task.h

変更を加えるファイルは以下のとおりです.

  • Arduino.h
  • wiring.c
  • main.cpp

基本的な製作の流れを踏まえつつ, 各ファイルごとに説明を行っていきます.

使用方法 | Arduino上で走るOSの作り方

ここでは, ArduinOSの使用方法を説明します.

C言語
Port.c | スクリプティング

PortMacro.hで宣言されているOSコア部分の関数をここで定義します. このファイルはAVRマイコン専用です.

「https://contentsviewer.work/Master/:tagmap/Web,Arduino/PWA,編集中?layer=ja」から取得