タグ

2018年1月17日のブックマーク (3件)

  • Golangの実行ファイルを複数まとめてトータルのファイルサイズを減らす工夫(busybox方式) - Qiita

    Golangの実行ファイルはサイズが大きい Golangはスタティックリンクされた実行ファイルを生成します。そのため実行ファイルのサイズは大きくなります。 ストレージの容量が十分あれば、これはとるに足らないことなのですが組み込みLinuxではストレージにNANDフラッシュメモリを使用していて容量が少ないこともあります。 残り容量が30MBしかないところに、3MBくらいの実行ファイルがぽんぽん増えていったりするとかなりつらい状況になります。 まずはひとつのファイルサイズを減らす go buildのときに不要なシンボルを削るオプションをつけます。 組み込みLinuxを使っている人なら通じると思うのですが、いわゆる「busybox方式」です。 Golangで書かれた複数のプログラムをひとつの実行ファイルにリンクしてしまいます。これによって重複して使用されているライブラリの分のサイズが削減できます

    Golangの実行ファイルを複数まとめてトータルのファイルサイズを減らす工夫(busybox方式) - Qiita
    vvakame
    vvakame 2018/01/17
    なるほどbusybox形式
  • 組み込みLinuxでGolangのススメ - Qiita

    一年近く、組み込みLinuxでのユーザープロセスをgolangで書くことを試していたのですが、これはいける! という感触を持ちました。 仲間を増やしたいと思うので、ここにその情報を紹介します。 #何をしたか 既存の製品をベースにして、新機能の実装をGolangで書いてみました。 既存の部分はCで書いてあります。Golangで書いた新機能部分は別プロセスになっています。 既存部分とのやりとりは場面によって以下を使い分けました。 cgoによる関数呼び出し UNIXドメインソケットの通信 シグナル Golangで書いた部分には以下の要素を含みます。 UARTやi2cで接続されたセンサーからデータを受け取る インターネット上のWebサービスAPIを使用する 2Dグラフィックスの描画 (cairoを使用) 最大性能を目指すよりも、十分な性能を手早く形にすることを重視しました。 #Golangでよか

    組み込みLinuxでGolangのススメ - Qiita
    vvakame
    vvakame 2018/01/17
    比較的珍しい使い方っぽい気がする
  • Container Structure Tests: Unit Tests for Docker Images

    The latest news from Google on open source releases, major projects, events, and student outreach programs. Usage of containers in software applications is on the rise, and with their increasing usage in production comes a need for robust testing and validation. Containers provide great testing environments, but actually validating the structure of the containers themselves can be tricky. The Dock

    Container Structure Tests: Unit Tests for Docker Images