タグ

ブックマーク / dsas.blog.klab.org (13)

  • ESP32 モジュールのフラッシュメモリ暗号化機構に関するメモ : DSAS開発者の部屋

    ESP-WROOM-32 の内蔵フラッシュメモリについて調べていたところで Flash Encryption に興味を持ちその便利さを実感しました。 利用方法にやや込み入った要素も含まれるため自分用のメモとして一連の情報を控えておくことにします。 Flash Encryption - ESP-IDF Programming Guide - esp-idf.readthedocs.io 重要: この記事には誤りが含まれている可能性があります。たとえその誤りが原因で何処かで何らかの損害が発生したとしても筆者ならびに当社は一切の責任を負いません。実験や操作は上記公式ドキュメントを熟読の上必ず自己責任で慎重に行って下さい。 概要 ESP32 モジュールのフラッシュメモリは esptool を使えば簡単に読み書きできるためバックアップ等に便利ですが、その一方で、自分の手を離れた場所で装置を稼働させる

    ESP32 モジュールのフラッシュメモリ暗号化機構に関するメモ : DSAS開発者の部屋
    komz
    komz 2018/09/06
    ESP32 モジュールのフラッシュメモリ暗号化機構に関するメモ
  • SwitchBot を ESP32 で遠隔操作してみた : DSAS開発者の部屋

    SwitchBot と公開 API 物理的なスイッチやボタンを人に代わって操作してくれる BLE デバイス SwitchBot (by Wonderlabs,Inc.)が人気です。有線/無線通信や赤外線等によるコントロールに対応していない機器をいわば強引に IoT 方面へ引き込もうという発想が面白いですね。 これは同じくクラウドファンディングを経て 2016年に商品化された MicroBot Push (by Naran Inc.: 工事設計認証番号 R208-160099) の後追い製品ではありますが、手元にある両者を比べてみると SwitchBot には後発であることのアドバンテージが随所に活かされているように見受けられます。とりわけ嬉しいのは体のアームを制御するための API が公開されていることです。 Switch Bot - The World’s Smallest Remot

    SwitchBot を ESP32 で遠隔操作してみた : DSAS開発者の部屋
    komz
    komz 2018/06/12
    SwitchBot を ESP32 で遠隔操作してみた
  • mruby を Linux カーネル内で動作させる(2017 ver) : DSAS開発者の部屋

    このエントリは KLab Advent Calendar 2017(兼 mruby Advent Calendar 2017)の 12 日目の記事です。 今年は(前半は)Keepalived にフルタイムでコントリビュートしていたり(後半は)ひたすら mruby をいじっていたりと、実に OSS 充な一年だった @pandax381 です。 タイトルにある試みについては、2015 年の時点で東京大学の品川先生が「mrubyLinux カーネル内で動作させる」という素晴らしい記事を書かれていて、Kernel module に組み込んだ mruby が動作することを実証されています。 mruby をカーネル内で動作させるために大きく問題となるのが、浮動小数点演算です。mruby は Float を標準的なクラスとして提供していると共に VM 内部でも浮動小数点演算を行っている一方で、Ke

    mruby を Linux カーネル内で動作させる(2017 ver) : DSAS開発者の部屋
    komz
    komz 2017/12/13
    mruby を Linux カーネル内で動作させる(2017 ver)
  • 大幅にパワーアップした「ESP32」で mruby を動かす : DSAS開発者の部屋

    ESP-WROOM-32 では、プロセッサがシングルコアの Xtensa L106 からデュアルコアの LX6 に強化され、SRAM の容量が大幅に拡大されています。新たに Bluetooth も搭載されています。 データシートを細かく見てみると、ESP-WROOM-32 では利用可能なペリフェラルの多さにも目を惹かれます。 ESP-WROOM-02 製品ページ http://www.espressif.com/en/products/hardware/esp-wroom-02/overview データシート http://www.espressif.com/sites/default/files/documentation/0c-esp-wroom-02_datasheet_en.pdf ESP-WROOM-32 製品ページ http://www.espressif.com/en/pro

    大幅にパワーアップした「ESP32」で mruby を動かす : DSAS開発者の部屋
    komz
    komz 2017/04/29
    大幅にパワーアップした「ESP32」で mruby を動かす
  • Brocade VDX NOS 7.0 は Python が動く! : DSAS開発者の部屋

    KLab では物理のサーバインフラを複数システム運用していますが、最近そのうちの1つでネットワークスイッチのリプレースを実施しようとしています。新たに導入するスイッチは Brocade 社の VDX6740 なのですが、このスイッチの OS である NOS 7.0 では、なんとスイッチ上で Python を動かすことができます。ということで少し触ってみました。 とりあえず触ってみる 使い方は、 UNIX の shell から Python を使うのと同じ感覚です。まず、通常通りスイッチに ssh などでログインします。 $ ssh -l admin vdx-switch Welcome to the Brocade Network Operating System Software admin connected from 192.168.0.10 using ssh on sw01 sw

    Brocade VDX NOS 7.0 は Python が動く! : DSAS開発者の部屋
    komz
    komz 2017/04/19
    Brocade VDX NOS 7.0 は Python が動く!
  • 最近の Python-dev (2017-03) : DSAS開発者の部屋

    バックナンバー: 2月号 1月号 Python 3.6.1rc1 Python 3.6.1rc1 がリリースされました。大きな問題がなければ 3.6.1 は 3/20 にリリースされる予定です。 3.6.1 は Github に移行してから初めてのリリースになります。なにか問題がないか確認するために、いつものRC版以上にソース形式・バイナリ形式両方の配布物のテストが必要なので、可能な方は協力をお願いします。 Github 移行後日談 以降から1ヶ月が経ちました。開発者からのフィードバックはおおむね好評です。私は、気軽にプルリクエストをくれた人がCLAにサインしないまま放置して大量のマージできないプルリクエストが貯まることを懸念していたのですが、今までののところそれも大丈夫そうです。 一方で Misc/NEWS といういわゆる changelog にあたるファイルが頻繁にコンフリクトを起こし

    最近の Python-dev (2017-03) : DSAS開発者の部屋
    komz
    komz 2017/03/17
    最近の Python-dev (2017-03)
  • チャットで学ぶ Go ネットワークプログラミング : DSAS開発者の部屋

    簡単なチャットプログラムは、ネットワークプログラミング用のフレームワークでは定番のサンプルプログラムです。 echo サーバーが Hello World とするなら、チャットは FizzBuzz といったところでしょう。 とりあえず動くだけのチャットならだれでもすぐに作れるようになりますが、まじめにチャットを作ることで、 ネットワークプログラミングで考えないといけない点やエラー処理の重要な基礎を学ぶことができます。 ということで、 Go でシンプルなチャットを実装してみました。 (ソースコード) 以降、何を考えてどういう設計を採用したのかを解説していきます。 考慮すべきポイント 特定のクライアントへの送信に長時間待たされた場合に、他のクライアントへの送信が遅れないようにする。 クライアントを切断するのは、 (1)ルーム側から kick する場合, (2)受信エラー, (3)送信エラー の3

    チャットで学ぶ Go ネットワークプログラミング : DSAS開発者の部屋
    komz
    komz 2014/09/04
    チャットで学ぶ Go ネットワークプログラミング
  • 起動不能なPCからインポートずみ証明書を救出せよ! : DSAS開発者の部屋

    毎日普通に使っている PC が突然起動できなくなるといろいろ困ったことになりますね。今回はそういう話のひとつです。 1. ことの始まり 先日、遠くの知人から「手元の PCWindows XP を起動できなくなった」と連絡がありました。 最初のロゴ表示が終わったところでフリーズする状態で、セーフモードでの起動もできないそうです。 彼は言います。 「HDD を取り出し別の PC につないで最新版のデータファイルを全部拾い上げたので、普段使ってるソフトの数を考えればもとの環境の復旧に時間をかけるよりも新しい環境へデータを移行する方が早そうだ」 幸い HDD に物理的損傷はなかったようです。 よかったね今後は HDD のまるごとバックアップもこまめにやるべし、と答えると、「実はひとつだけ問題が残っている」とのことでした。 話はここから始まります。 問題というのは「Windows 証明書ストア

    起動不能なPCからインポートずみ証明書を救出せよ! : DSAS開発者の部屋
  • DSAS開発者の部屋:ケータイやクローラの判別などに使えるmod_cidr_lookupを公開しました

    mod_cidr_lookupというApacheモジュールを公開しました。 http://lab.klab.org/wiki/Mod_cidr_lookup mod_cidr_lookupは、アクセスしてきたクライアントのIPアドレスが、指定したCIDRブロック群のいずれかにマッチするかどうかを判別するApacheモジュールです。 Apache 2.0と2.2系に対応しています。 マッチした結果は、環境変数 (X_CLIENT_TYPE) とHTTPリクエストヘッダ (X-Client-Type) にセットするので、Apache自身とバックエンドのWebアプリの両方で同じ情報を参照することができます。 このモジュールを使うメリット 簡単にクライアントの種類を知ることができる 判別処理はモジュールが行ってくれるので、のちほどお見せるように、Webアプリやhttpd.confでは環境変数やリク

    DSAS開発者の部屋:ケータイやクローラの判別などに使えるmod_cidr_lookupを公開しました
    komz
    komz 2008/08/27
  • Windows用フリーウェア「WinAmulet」を公開します : DSAS開発者の部屋

    ・「イージスガード」公開のお知らせ (2009/10/06) WinAmulet 上位互換の「イージスガード」を個人用フリーソフトとして公開しました。イージスガードに使用制限はありません。今後はぜひこのイージスガードをご利用下さい。 ・WinAmulet 終了のお知らせ(?) (2009/08/13) ■ はじめに 私の PC には個人的なファイルをたくさん保存しているフォルダがあります。その中身は、住所録や思い出のスナップ、メールデータやちょっとした秘密のメモなどさまざまです。 ある時ふと思いました。これらのファイルを読み書きするときに使うプログラムはごく限られています。 普段自分がそれ以外のプログラムを使ってこれらにアクセスすることはありませんし、まして、たとえ Windows のシステムプログラムであっても、自分の意図とは無関係に動いているプログラムからこれらに勝手にアクセスされるの

    Windows用フリーウェア「WinAmulet」を公開します : DSAS開発者の部屋
  • DSAS開発者の部屋:Win32 プログラムのデバッグTips (1)

    ■ はじめに ひとつのプログラムを完成させるまでには、多くの場合「デバッグ」という作業が必要です。 まったくバグのないプログラムを一気に書き上げるのは難しいことですから、 プログラミングの際には実行時のエラーを見つけやすくするための工夫が必要ですし、 実際にエラーが発生した場合にはできるだけ手際よく対処したいものです。 デバッグを行う上での最初の目標である「原因の特定」を効率的に行うための ツールや流儀はプラットフォームや使用言語により一様ではありませんが、 ここではネイティブな Windows プログラムをデバッグする上で役に立つ小技をいくつかとり上げてみたいと思います。 今回は、自作のプログラムの実行中にプロセスが異常終了する状況において、 問題箇所を手早く探すための方法のひとつをご紹介します。 記事では Microsoft Visual C++ を開発環境と想定しています。 どうやら

    DSAS開発者の部屋:Win32 プログラムのデバッグTips (1)
  • Erlang で付箋Webアプリケーションを作ってみました。 : DSAS開発者の部屋

    インターネットを見ていて、そのときの感想とかページの内容に対して思っ たことなんかを簡単に書き留めておけると便利かなと思い、適当なWebのペー ジ上にブラウザで表示したまま付箋をつけられる WEB アプリケーションを、最近流 行の Erlang 作成してみました。 付箋 Web の実験デモサイトはこちらです。 http://husen.lab.klab.org/ 付箋Webの概要は 付箋のデータは専用の付箋Webサーバ上に保存される。 ブラウザー上ではAjaxで付箋Webサーバと通信する。 ブックマークレットを使って、任意のページで付箋を使えるようにする。 実際に作成しようとすると、他人のページに、ほかのサーバのデータを使って 重ね書きするので工夫が必要になります。最初に考えたのは、IFRAMEを使って 他人のページを表示する方法でしたが、これだけだと使いづらいので、ブック マークレットを

    Erlang で付箋Webアプリケーションを作ってみました。 : DSAS開発者の部屋
  • DSAS開発者の部屋:Windows用フリーウェア「HookDate」を公開します

    ■ はじめに プログラム開発にテストはつきもので、テストの際に特定の年月日でプログラムの動作を確認しなければならないことがよくあります。その場合に手っ取り早いのは「コンピュータのシステム日付を変更する」という方法ですが、Windows ではバックグラウンドで多くのプログラムが動いており、システムへの影響を予測できないためできればその方法は避けたいものです。 そこで、API フックを利用して、特定のプログラムに対してシステム日付とは異なる日付を伝えるツール「HookDate」を作ってみました。 せっかくなのでこのブログの読者の方にフリーウェアとして公開することにします。 (追記)2010年06月16日:バージョン 1.0.2.0 を公開しました ■ 最新版の改訂内容 ver 1.0.2.0 (2010/06) 64ビット Windows 環境への対応 exe ファイルへのショートカットファイ

    DSAS開発者の部屋:Windows用フリーウェア「HookDate」を公開します
  • 1