質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
OS

OS(オペレーティングシステム)は、システムソフトウェアの一種であり、一般的に、ハードウェアを直接的に管理・操作する最も中心的な機能を有するソフトウェアがオペレーティングシステムとして呼ばれます。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

sh

shは、UNIX系OSのシェル操作の1つであり、最も基本的なシェルのことです。

Elixir

Elixirは、並列処理や関数型に特化した、Erlang VM (BEAM) 上で動作する汎用プログラミング言語です。分散システム、耐障害性、ソフトリアルタイムシステムなどの機能を持ちます。

Q&A

解決済

1回答

445閲覧

ElixirのNervesシステムにて、ターゲットの必要最小限のメモリ容量は?

MickeyOh

総合スコア25

OS

OS(オペレーティングシステム)は、システムソフトウェアの一種であり、一般的に、ハードウェアを直接的に管理・操作する最も中心的な機能を有するソフトウェアがオペレーティングシステムとして呼ばれます。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

sh

shは、UNIX系OSのシェル操作の1つであり、最も基本的なシェルのことです。

Elixir

Elixirは、並列処理や関数型に特化した、Erlang VM (BEAM) 上で動作する汎用プログラミング言語です。分散システム、耐障害性、ソフトリアルタイムシステムなどの機能を持ちます。

1グッド

0クリップ

投稿2019/11/19 02:41

現在、ターゲットには64Mbのramメモリがありますが、このボードにNervesを組み込み、ソフトは動くものでしょうか?
ハード

  • CPU SH-4A
  • Ram 64Mb
  • Rom 32Mb
  • USB接続IFあり。
  • Linuxの組込みの経験なし(ボードへの移植経験と私の開発経験とも)
  • 現OS - Reamtime OS iTron

このハードにNervesを組込み、機能実現したいが、メモリの制約を調査しているが、わからないまま。

Nervesの標準ターゲットのRPi zeroは512Mbメモリなので、64Mbで動作させるのは、望み薄すでしょうか?

退会済みユーザー👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

Nervesが正式にサポートしているターゲットは このページ にあるようにRaspberry PiやBeagleBoneですが、それ以外にもコミュニティが追加したターゲットがあり、それらを含む全てのターゲットは こちら で見られます。

その中のLego Mindstorms EV3の搭載RAM容量は、Wikipedia によると64MBのようです。

また、ErlangのFAQに「Implementations and Ports of Erlang」という章があるのですが、そのページの下の方の「Is Erlang small enough for embedded systems?」には、以下のように書かれています。

People successfully run the Ericsson implementation of Erlang on systems with as little as 16MByte of RAM.

これらのことから64MBのRAMで動くと考えてよさそうです。

もちろん、64MB RAMのターゲットでは、512MB RAMのターゲットと比べるとアプリケーションが使えるメモリは減りますので、実際に動くかはアプリケーションの内容しだいなところもあります。NervesにはエミュレータのQEMU ARM向けのターゲットもあるようですので、64MB RAMの仮想マシンを作成してNervesの簡単なアプリを動かし、メモリ消費量を見てみるのもいいかもしれません。

あとはOSをどうするかですね。もしLinuxを動かせるなら、それがいちばんいいと思います。

投稿2019/11/19 07:55

編集2019/11/19 07:59
tatsuya6502

総合スコア2035

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

MickeyOh

2019/11/19 09:14

早速の回答ありがとうございます。それに、わかり易く、ご丁寧な説明に恐縮の限りです。 erlangのVMに16Mで、Nerves+APP分で動作するとの事ですね。なんとなく、64Mって余裕で動きそうな気がします。 後、少し変な素人の質問かもしれませんが、最後の > OSをどうするかですね。もしLinuxを動かせるなら、それがいちばんいい についてですが、OSなしで、Nerves単独だけでは動作しないものなんでしょうか。
tatsuya6502

2019/11/19 09:30

私はNervesを使ったことがないので詳しくないのですが、 まずElixirを動かすためにはErlang VMが必要で、そのErlang VMはLinuxなどのPOSIX対応のUNIXライクOSか、Windowsで動きます。 Nervesのトップページ https://nerves-project.org/ を見た感じでは、Nervesは、Linux、Erlang VM、Elixir、Nervesアプリのコードがセットになったディスクイメージを作るように思えます。 > Pack your whole application into as little as 12MB and have it start in seconds by booting a lean cross-compiled Linux directly to the battle-hardened Erlang VM ですからターゲットでLinuxが動くことは、ほぼ必須のようです。 > If a board can run embedded Linux (not uClinux), it likely can run Nerves.
MickeyOh

2019/11/19 12:16

了解しました。 Nervesの中にすべて入っているんですね。安心しました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問