タグ

2019年7月11日のブックマーク (10件)

  • [備忘録]BeagleBone Blackのコアクロック変更

    takuwz
    takuwz 2019/07/11
  • 「USBポートにフックをつけたら超便利」というネット記事に「絶対やるな」という声が集まる

    デイリーポータルZ @dailyportalz [USBポートにフックをつけたら超便利(デジタルリマスター版)] bit.ly/2sBVrUf 通信、給電に続く第3のUSBコネクタの使い方。なお接触がどんどん悪くなりますので、もげてもいいコネクタでお試しください。 #DPZ pic.twitter.com/BfYXYguU9y 2018-02-18 22:14:52 リンク デイリーポータルZ USBポートにフックをつけたら超便利(デジタルリマスター版) - デイリーポータルZ パソコンのUSBポートにフックをつけたら、電話や文房具がかけられて便利になりました。 (石川大樹) 34 users 48

    「USBポートにフックをつけたら超便利」というネット記事に「絶対やるな」という声が集まる
    takuwz
    takuwz 2019/07/11
  • volatileの誤った知識と排他制御 - 組み込みまするβ

    takuwz
    takuwz 2019/07/11
    “それは排他制御とは本来無関係なvolatileの解説として、 次のような変数をポーリングするコードでvolatileの必要性を説明しているサイトが多く、 それがvolatileにはアトミック性があると誤解させる要因になっているのでは
  • 不可分操作 - Wikipedia

    この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。 出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "不可分操作" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL (2023年1月) 不可分操作(ふかぶんそうさ)あるいはアトミック操作 (英: atomic operation) とは、情報工学においていくつかの操作を組み合わせたもので、システムの他の部分から見てそれらがひとつの操作に見えるものをいう。 不可分操作は、以下の2つの条件を満たさなければならない。 全操作が完了するまで、他のプロセスはその途中の状態を観測できない。 一部操作が失敗したら組合せ全体が失敗し、システムの状態は不可分操作を行う前の状態に戻る。 システムの他の部分から見

    takuwz
    takuwz 2019/07/11
    “不可分操作は、以下の2つの条件を満たさなければならない。 全操作が完了するまで、他のプロセスはその途中の状態を観測できない。 一部操作が失敗したら組合せ全体が失敗し、システムの状態は不可分操作を行う前の
  • アトミックであるとはどういうことか | 組込屋

    当は 0x11 になるべきところが、0x10 への変化が塗りつぶされ、0x01 になってしまいました。これも、滅多に起きないからこそ恐ろしいバグの一つです。 弱者の義務 あるタスクから見て値が絶えず動いているということは、それは自身より優先度の高いタスクによって書き換えられているか、ペリフェラルのレジスタであるかのどちらかです。 ここに一つのポイントがあります。アトミック性を意識しなければならないのは、常に割り込まれる側、つまり弱者の側であるということです。今あなたの書いているコードが強者の側なら、これに対して打てる手はありません。 対策 アトミック問題の対策については、問題領域によって取るべき手段が異なるため、とてもここに書き切れるものではありませんが、比較的単純なものをここでご紹介します。 二度読み 値を単に抜き取るだけなら、この対策が最もシンプルです。二度読みとは、厳密には「二連続

    アトミックであるとはどういうことか | 組込屋
    takuwz
    takuwz 2019/07/11
    “構造体のコピーは、およそ CPU の1命令で成し得る操作ではないからです。そして、この操作がアトミックでないとどうなるか。運悪く時刻の変わり目に当たると、バグになります。”
  • Microsoft PowerPoint - pthread.ppt

    takuwz
    takuwz 2019/07/11
    C言語でスレッド(Pthread) 2007年1月11日 海谷 治彦
  • [迷信] とりあえず memset で初期化 | 株式会社きじねこ

    よく見かけるコードですが、上のコードは、必ずしも期待した結果になるとは限りません。なぜなら、double 型やポインタ型は、これらを構成する全ビットが 0 になったとしても、オブジェクトの値が 0 になるかどうかは分からないからです。 確かに、ほとんどの処理系では上記のコードでも問題なく、そして期待通りに動作します。しかし、それはあくまでも"たまたま"動いているに過ぎません。そうした不安定な要素をなくすために行った初期化が、かえってコードを怪しくしてしまっているのです。 単に、集成体の全要素をゼロクリアしたいだけであれば、 とすれば十分です。こう書くと、おそらく次のような反論が返ってくることでしょう。「その方法では、構造体の詰め物がゼロクリアされない」と。しかし、構造体の詰め物にアクセスして、言語仕様上保証される結果を期待することには無理があります。 構造体の詰め物をゼロクリアしたい理由は

    takuwz
    takuwz 2019/07/11
    “よく見かけるコードですが、上のコードは、必ずしも期待した結果になるとは限りません。なぜなら、double 型やポインタ型は、これらを構成する全ビットが 0 になったとしても、オブジェクトの値が 0 になるかどうかは
  • C言語とC++って何が違うの? - 私が気にする100の事象

    これは修正すべき点がいくつもあるため、近いうちに修正します。(西暦2021年11月27日追記) CとC++の違い C++での入出力関数 iostreamについて coutについて 名前空間について string型について string型の基的な使い方 連結できる string型をconst char*型に変換したいとき char*型をstring型に変換したいとき cinについて 最後に こんにちは、プログラミング初心者の「コウちゃん」です。 こんにちは、プログラミングのことなら、お茶の子さいさい、「おちゃっぱちゃん」です。 今回は「C言語とC++って何が違うの?」について、やっていきましょう! CとC++の違い C言語とC++って結局何が違うの? 簡単に言うと、古くなってしまった昔のC言語に 増築するような形で、 新しく機能をC言語に追加したものが「C++」なんです。 っていうことは、

    C言語とC++って何が違うの? - 私が気にする100の事象
    takuwz
    takuwz 2019/07/11
  • Account Suspended

    Account Suspended This Account Has Been Suspended

    takuwz
    takuwz 2019/07/11
  • CからC++への変更点

    関数のプロトタイプ C++では、一部C言語とは違う、または拡張された部分がいくつかあります コンパイラの実装レベルや、低レベルな部分での違いは省略します C++プログラムを読み書きするのに、Cプログラマが最低限知るべきことを紹介します まずは、関数のプロトタイプについてです C言語でのプロトタイプ宣言で、引数に何も値を受け取らない場合はvoidを明示する必要があります しかし、C++では任意です。voidを省略すると値を受け取らない関数を意味します #include <stdio.h> /*C言語ではvoidを明示しなければならない*/ void func(void); void func() { puts("kitty on your lap"); } int main() { func(); return 0; } 上はC言語プログラムです C言語では、引数に何も受け取らない関数の場合

    takuwz
    takuwz 2019/07/11