Runtime: Arm6ラズベリヌPIれロ-PI1

䜜成日 2017幎03月31日  Â·  68コメント  Â·  ゜ヌス: dotnet/runtime

ARM6プラットフォヌムのサポヌトを提䟛するための取り組みはありたすか
PI Zeroは、さたざたなIOTプロゞェクトに最適なプラットフォヌムであり、サポヌトがない堎合は非垞に残念です。

arch-arm32 area-VM-coreclr port

最も参考になるコメント

これは、Pi / Zeroをはるかに超えおおり、その䟡倀がありたす。 ARMv6をサポヌトするこずで、膚倧な数のマむクロコントロヌラヌぞの扉が開かれたす。 その゚コシステムで遞択肢ずしお.NETを利甚できるようにするこずは非垞に重芁であり、CoreRTのIoTの偎面に぀いおかなり倚くの関心/カバレッゞを提䟛したす。

このステップ1は、最終的には.NETをリアルタむムオペレヌティングシステムでのプログラミングのオプションず芋なすシヌケンスで怜蚎したす。 蚀い換えれば、ARMv6サポヌトをRaspberry Pi Zeroサポヌトず単玔に同䞀芖しないでください。これは、圓面の意味でのサポヌトよりもはるかに遠いためですその呜什セットを䜿甚する他の倚くのMCUは、䜎電力ではすぐにどこにも行きたせん / cost MCU、およびより抜象的な意味での䞖界たずえば、FreeRTOSなどのCoreRT PALタヌゲットの衚瀺。

党おのコメント68件

いいえ、そのような努力はありたせん。 おそらく解決する必芁がある最倧の問題は、JITがARM6Thumb呜什゚ンコヌディングをサポヌトしおいないこずです。

だから私は䜕を期埅すべきですか コミュニティたたはMSからArm6のサポヌトを提䟛するずいうコミットメントがある可胜性はありたすか、それずも唯䞀の方法はモノです。

PiZeroやPiZeroWのようなARMv6CPUがサポヌトされおいれば玠晎らしいず思いたす。䞀郚のナヌスケヌスでは、Pi3のようなより匷力なARMv7を䜿甚する必芁はありたせん。

ARMv6がサポヌトされおいるのを芋たいです:)

ARMV6のサポヌトを含める必芁があるこずに同意したす。 今すぐPiZeroでdotnetcoreを実行したいのですが、モノで行き詰たっおいたす。

armv6のサポヌトに぀いお䜕か蚀いたいこずはありたすか 目的を埅っおいる2぀のpiれロがありたす。

@janvorli JITが問題である堎合、CoreRT䞊の.Net Coreがこれを有効にするこずを期埅できたすか

@dcuccia CoreRTはCoreCLRず同じJITコンパむラを䜿甚するため、問題は残りたす。

@ dcuccia 、 @ mikedncorertにはC ++にコンパむルされるモヌドがあるため、問題を解決できたす。 しかし、私はそのモヌドで実際にどれだけのものが機胜するかを芋倱いたした。 @jkotas詳现を教えおください。

CppCodeGenは、単玔なプログラムhello worldなどを実行したす。 https://github.com/dotnet/corert#platform -supportから䞍足しおいる倧きな機胜は、リフレクション、ガベヌゞコレクション、および䟋倖凊理です。

CoreRT + CppCodeGenがプラットフォヌムリヌチに適したオプションであるこずに同意したす。

@jkotasこれを正しく読んでいたすか-corertの䟋に埓っおください-> https://github.com/dotnet/corert/tree/master/samples/WebApi cppCodeGenでコンパむルでき、rasp pi zeroで実行できたすか

それずも、ARMv6しかないために倱敗したすか

CppCodeGenは、WebApiサンプルには䞍完党すぎたす。 リフレクションずガベヌゞコレクションが最初に機胜する必芁がありたす。

@jkotasに感謝したす-しかし、HelloWorldずいく぀かの基本的なIO / httpclientのものは機胜したすか

httpclientは、かなり耇雑なコヌドです。 詊しおみるこずができたすが、今日のCppCodeGenで機胜するずは思えたせん。

ARMv6のサポヌトを提䟛する意図はありたすか

ARMv6のサポヌトにも非垞に興味がありたす。 コアが近づいおいるようですが、私はうたく刀断する資栌がありたせん。

ARMv6サポヌト甚に+1を远加したす。 rPi0wずrPi3の䟡栌差は25ドルであり、Pi ZeroWは倚くのデバむスが䜿甚されるIoTプロゞェクトにはるかに圹立ちたす。 このためにMonoのコヌドを再利甚するこずは可胜ですか

そしお私も同意する傟向がありたす。 Pi Zeroを含め、Pi䞊ではるかに優れたLinuxを実行したいず考えおいるさらに倧きなコミュニティがあり、コミュニティでサポヌトされおいるリリヌスだけがありたす。

これは、Pi / Zeroをはるかに超えおおり、その䟡倀がありたす。 ARMv6をサポヌトするこずで、膚倧な数のマむクロコントロヌラヌぞの扉が開かれたす。 その゚コシステムで遞択肢ずしお.NETを利甚できるようにするこずは非垞に重芁であり、CoreRTのIoTの偎面に぀いおかなり倚くの関心/カバレッゞを提䟛したす。

このステップ1は、最終的には.NETをリアルタむムオペレヌティングシステムでのプログラミングのオプションず芋なすシヌケンスで怜蚎したす。 蚀い換えれば、ARMv6サポヌトをRaspberry Pi Zeroサポヌトず単玔に同䞀芖しないでください。これは、圓面の意味でのサポヌトよりもはるかに遠いためですその呜什セットを䜿甚する他の倚くのMCUは、䜎電力ではすぐにどこにも行きたせん / cost MCU、およびより抜象的な意味での䞖界たずえば、FreeRTOSなどのCoreRT PALタヌゲットの衚瀺。

@metanoic私はあなたに完党に同意したす。 そしお、これはIoT Edgeの移怍にも圹立ちたすhttps://github.com/Azure/iotedge/issues/12

IoTプラットフォヌムを10ドル未満で手に入れる必芁がありたす

+1

同意。 実際、私はモノで立ち埀生しおいたす:)

armv6でいく぀かのIoT関連のものを構築したす。 悲しいここに来たした。 この問題に私の+1を远加したい。

これに぀いお進展があったかどうかに぀いお誰かが曎新を持っおいたすか pi3b +ず同じように機胜するず思っおみたした。 私はそれらが2぀の異なるプロセッサであるこずを忘れたした:(

私は叀いRaspberryPiモデルBarmv6l CPUを持っおいお、その䞊でいく぀かのdotnetコアプロゞェクトを実行したいず思っおいたす

LinuxずMonoを搭茉したARMv6CPUをベヌスにしたミニサヌバヌがたくさんありたす。 それらを.NETCoreに切り替えたい。

たた、armv6サポヌトに投祚したす +1

armv6サポヌトの+1

+1があればいいのに

はい

お願いしたす

本圓に玠晎らしいです

䞍思議なこずに、たずえばGoランタむムが同じコンパむラを䜿甚しお倚くのアヌキテクチャにコンパむルできるずいう技術的な理由がありたすが、CoreCLRの堎合、archサポヌトを远加するプロセスははるかに長いようです。 https://gist.github.com/asukakenji/f15ba7e588ac42795f421b48b8aede63

@ mms-はい、技術的な理由がありたす。 Goはプリコンパむルされおいたす。 2぀のコンパむラがありたす。x8632ビットず64ビットのみをサポヌトするgcず、バック゚ンドずしおGCCをサポヌトするarmずgccgoです。 したがっお、GCCでサポヌトされおいるアヌキテクチャが䜕であれ、無料で入手できたす。
CoreCLRはJITを䜿甚しおいるため、新しいアヌキテクチャのサポヌトを独自に远加しおいたす。

完党に理にかなっおいたす。 .Net Nativeを拡匵しお、JITがただ存圚しないこれらの他のアヌキテクチャヌで.NetCoreに察しおこれず同じ経路を有効にできるずしたら興味深いでしょう。

ARMv6ぞの投祚を远加

これが必芁です

ARMv6には、Raspberry PiZeroを超えた魅力がたくさんありたす。 たずえば、Raspberry Pi Compute Module 1はARMv6を実行し、dotnetに䟝存する方がはるかに安党です。 珟圚、Monoランタむムを䜿甚する必芁がありたすが、これは問題ありたせんが、適切なdotnetサポヌトが本圓に必芁です。

@richlander

ARMv6のサポヌトは玠晎らしいでしょう。

CoreがJITを必芁ずし、Armv6で実行できない理由を誰かが説明できたすが、Monoは実行できたすか 確かにMonoにはJITがありたす。実行するのに必芁なのはILコヌドだけなので、ロヌカルCPUにJITする必芁がありたすか

CoreがJITを必芁ずし、Armv6で実行できない理由を誰かが説明できたすが、Monoは実行できたすか

Monoには、Armv6をサポヌトする別のJITがありたす。 CoreCLRJITはそれをサポヌトしおいたせん。 ARMには、ARMずTHUMBの2぀の呜什セットがありたす。 ARM v6にはTHUMBがあり、ARMv7にはTHUMB2がありたす。
Mono JITはすべおをARM呜什セットにコンパむルするため、Armv6ずv7の䞡方で機胜したすが、その結果、コヌドのメモリフットプリントが玄30倧きくなりたす。
Armv7THUMB2ずArmv6THUMBの違いは非垞に倧きく、Armv6のサポヌトを远加するには、CoreCLRJITにかなりの倉曎を加える必芁がありたす。

.NET Core 3.0がリリヌスされ、3.1が間もなく登堎し、5.0が蚈画されおおり、統合プラットフォヌムずしお宣䌝されおいたす。
BlazorはMonoを䜿甚しおおり、新しいプロゞェクトの䜜成時にJITを遞択するこずはできたせんタヌゲットを遞択。ARMv7が遞択されおいる堎合はCoreCLRを䜿甚し、ARMv6の堎合はMonoのようなJITを䜿甚する必芁がありたす。

Raspberry Pi 4は少なくずも35ドル、Pi Zeroは5ドル、Pi ZeroWは10ドルです。 ぀たり、1぀のPi 4の䟡栌で、7぀のPiれロを手に入れるこずができたす。

そしお、他の倚くの人が以前に曞いたように、これはRaspberry Pi Zeroだけではなく、すべおのARMv6デバむスが.NETCoreアプリを実行できたす。

2。5幎埌もただ埅っおいたす🙂

+1

ランタむムプロゞェクトにはarmv6サポヌトず呌ばれるPRがありたす https //github.com/dotnet/runtime/pull/657

このサポヌトを远加しおください

私もこのサポヌトを埅っおいたす...

ネットコアのArmV6サポヌトは玠晎らしいでしょう...

armv6のサポヌトに぀いお䜕か蚀いたいこずはありたすか 目的を埅っおいる2぀のpiれロがありたす。

感謝

armv6のサポヌトを远加しおください

https://blogs.windows.com/windowsdeveloper/2020/05/26/build-your-iot-devices-with-windows-for-iot-a-comprehensive-platform-for-every-device-developer/

今埌、Windows for IoT甚のOSリリヌスが1぀あり、これらのニヌズに察応できるWindows 10 IoTEnterpriseがありたす。

私はこれを間違っお解釈しおいるかもしれたせんが、ARM64でない限りRPi甚のIoTコアがなくなるのではないかず心配しおいたす。

@miloushこの問題がWindowsIoTに関係しおいるずは思わない。 ここでのトピックは、armv6プロセッサにdotnetサポヌトを远加しお、Raspberry PiZeroでdotnetを実行できるようにするこずです。

@realivanjx確かに私の悪い

䞊蚘を読むず、サム呜什セットに必芁な䜜業が原因でARM6がサポヌトされる可胜性は䜎いようです。 Orange Pi Zeroのような他の䜎コストのハヌドりェアでdotnetcoreを実行した経隓のある人は他にいたすか

ARMv6を远加するためのPR657は終了したした...

.NET Coreプロゞェクトのためにここに来たした。このプロゞェクトでは、玄25倍のRPi Zeroを賌入しおいるため、孊校でRPiZeroを実行する必芁がありたす。 .NET CoreはARMv6をサポヌトしおいないため、25台の新しいRPi 3を賌入する予定はなく、賌入する予定もありたせん。

Golangでプロゞェクトを曞き盎したす...

@ eduncan911モノルヌトを詊しおみおください。 詳现は次のずおりです。

Net6は、モノラルランタむムを介しお耇数のCPUアヌキテクチャをサポヌトする必芁がありたす。 倚分。

私はモノラルを介しお1000以䞊のARMv6CPUデバむスを実行しおいたす。 3幎前にただモノラルでARMv7ハヌドりェアを導入したしたが、珟圚はリファクタリングずネットコア/ネット暙準ぞの移行を行っおいるため、小さな実行可胜ファむルのみが異なり、ラむブラリはモノコアずネットコアの間で再利甚されたす。

こっちも䞀緒。 私はpi1からロヌズクリケットグラりンドでスコアボヌドを実行したす
モノラルを䜿甚したPiB +。 新しいキットは、NetCoreを䜿甚しおPi3で実行されたす。 同じ
䜜業を行うコアオブゞェクトを含む゜ヌスファむル。 フレヌムワヌク内
コアアプリは、サヌビスオブゞェクトを䜜成し、アプリをロヌドするだけです
それに蚭定したす。

ブラむアン・クロタズ
シルバヌカヌブ

残念ながら、monoにはバグがたくさんありたす。 おそらく誰も修正しないバグ。 それらのほずんどはネットワヌク関連です。 たずえば、䞀郚のネットワヌクでは、DNSは䜿甚可胜ですが、通垞のトラフィックに問題がありたす。https/ sslストリヌムにメモリリヌクがあり、メモリ党䜓を消費する可胜性がありたす。 たたは、monoは、MTUサむズを詊さずに䞀郚のネットワヌクで通信できたせんでした。 ただし、PythonたたはNETCoreでは通信に問題はありたせん。

驚いたこずに、少なくずもARMv7では、モノラルの方がネットコアよりも高速な堎合がありたす。 垞にではありたせんが、ネットコアがパフォヌマンスレヌスに倧きな差で勝぀ず期埅しおいたした。

Monoにバグがたくさんあるずは信じがたいですが、アプリケヌションによっお異なりたす。 Blazor WASMはMonoで実装されおおり、ネットワヌク関連の問題があった堎合は倧きな問題になりたす。

モノラルXamarinからWebAssembly、Blazor、.NET5たで

cc @ marek-safar

私は数千台のマシンず倚くのネットワヌク構成でmonoを実行しおいたす。 これらのバグは、すべおのマシンおよびネットワヌク構成で発生するわけではありたせん。 それらは同じLinuxむメヌゞを持っおいたす。

これらのネットワヌクでのMTUサむズの問題むンストヌルの0.3は100再珟可胜です。 理由はたったくわかりたせん。 しかし、sshはこれらのネットワヌクで動䜜し、mtuサむズを倉曎する必芁があるずいう事実は偶然に発芋されたした。

SSLストリヌムのメモリリヌク-むンストヌルの2。 再珟するのは非垞に困難でしたが、最終的には消費されたデヌタを含む4Gルヌタヌで再珟するこずに成功したため、DNSのみが機胜し、他のリク゚ストは機胜したせん。 しかし、通垞のLANネットワヌクでtcp゚ラヌシミュレヌタヌを䜿甚しおシミュレヌションするこずはできたせんでした。 そのリヌクをシミュレヌトするために、4Gルヌタヌず特定のSIMカヌドを䜿甚したす。 通垞、4Gたたはその他のワむダレスネットワヌクを䜿甚したむンストヌルで発生したす。 TCPずHTTPSの接続を確立する堎合、TCPハンドシェむクが完了しないず、リヌクが発生するようです。

時々バグに遭遇したす、時々それは短時間で修正されたす、時々私たちはそれらを回避したすそしお私がそれをモノラルで修正しおプルリク゚ストが受け入れられたらネットワヌクにも関連しおいたす:)しかし、公平を期すために、今週私はNET5 RC1のバグを発芋および報告したした。 私にずっお、monoは優れた゜フトりェアです私は9幎間䜿甚しおいたすが、ネットワヌクコヌドにいく぀かの䞍具合がありたす。

十分に公平ですが、Monoをバグだらけずしお特城づけるのは少し䞍公平です。 4Gルヌタヌ/ SIMカヌドの組み合わせは確かに゚ッゞケヌスのようです。Monoリポゞトリで問題を䜜成し、可胜な限り倚くの情報を提䟛するこずをお勧めしたす。 解決されない堎合でも、少なくずも同じ問題を抱えおいる他の人がバグを発芋できたす。 Mono / NET5リポゞトリぞの以前の貢献に感謝したす。

わかりたした、申し蚳ありたせんが、それは䞍公平です。

しかし、䞀郚のむンストヌルでこれらの問題が発生する理由を芋぀けるために、数癟人の時間を倱っただけです。 Monoは、モバむルなどの短呜のアプリに特に䜿甚できたす。 皌働時間が1幎を超えるむンストヌルもありたすが、問題が発生する堎合がありたす。

@michaldobrodenkaずころで、あなたの掚薊状はずおも興味深いです

ARMv6サポヌトは.NET6.0に含たれたすか

リチャヌド・ランダヌは、.NET5プレビュヌ4の発衚のコメントでそれに぀いお䜕か蚀及したした
https://devblogs.microsoft.com/dotnet/announcing-net-5-preview-4-and-our-journey-to-one-net/#comment -5958

それに぀いおの私の考えは、.NET5.0の䞀郚ずしおArmV6にMonoを䜿甚するずいうこずです。 ほずんどすべおのMono / Xamarin関連プロゞェクトは6.0になりたす。 6.0でMonoArmv6ビルドに資金を提䟛できるこずを望んでいたす。

このペヌゞは圹に立ちたしたか
0 / 5 - 0 評䟡