タグ

japaneseとsmpに関するmasterqのブックマーク (6)

  • MultiCoreOS自作入門 - PG_MANA - BOOTH

    自作OSでx86_64 CPUのマルチコアプロセッサ対応をしたい方向けにRustで簡単な実装例を交えて説明しています。 OS自作をある程度行ったことがある方を対象としています。 同じ内容は https://soft.taprix.org/code/os/multicore.html でも閲覧可能です。 お金に余裕のある方はこちらを買っていただけると大変ありがたいです。

    MultiCoreOS自作入門 - PG_MANA - BOOTH
  • ねむいさんのぶろぐ | いろいろ試す49

    !告! DropBoxの仕様変更に伴いまして過去の記事の画像が 見えなくなっていた問題はようやく解消しました! 現在EDGEで正常に閲覧できるよう過去の記事を適宜修正中です。 ●OpenOCDでマルチコアデバッグするやり方 竹様よりコメントでお題をいただいたのでトリプルコア搭載のLPC4370ボード、 LPC-Link2を使って実践してみました。 まずねむいさんのOpenOCDバイナリの/tcl/targetlpc4370_lpclink2_spifi.cfgを 編集します。デフォルトはm4コアしか有効にしていませんがm0subを有効にします。 ①と②の部分が編集した部分です。 m0appは電源投入直後は寝ているので今回は省きます。 なお順番が重要でm4コアを必ず先頭に持ってきておきましょう。 まずOpenOCDを起動したらm4コアにアタッチします。insightでつなぎます。 insi

    ねむいさんのぶろぐ | いろいろ試す49
  • 非同期と並列 / morrita - Message Passing

    karino2 が 並列プログラムから見たFuture というビデオを作って公開していたので、引っ越しの荷造りをしながら眺めた。 長いのでここにざっくりとした主張をまとめると: Future/Promise (およびその後釜の async/await) は非同期プログラミングで callback hell にならない発明という見方をされているが、 そもそもなぜ callback hell が必要だったかの時代背景が十分に理解されていない。 背景の一つはブラウザ JavaScript のプログラミングモデルにシングルスレッド・ノンブロッキング(イベントループ)という制限があったから。 これは(特にフロントエンド開発者の間では)よく理解されている。 もう一つの視点は SEDA みたいなマルチスレッド・ノンブロッキング環境の必要性で、 こっちはいまいち広く理解されていないように思える。 結果とし

    非同期と並列 / morrita - Message Passing
    masterq
    masterq 2021/04/27
    うーん、なんかLWPをユーザ空間で手作りしている感が。。。
  • 誰かがどこかで使ってる / morrita - Message Passing

    自分は仕事で電話機のカメラアプリ開発を手伝っている。 なのでカメラアプリから見るとどうかを中心に議論してみたい。 電話機の CPU はどのくらい使われているのか 電話機の CPU, 最近だと 8 コアくらいある。こいつらを活用したい。 わけだけれど、まず現実にはどのくらい活用されているのか実例を眺めてみる。 ちょっと前に自分のブログで Perfetto というトレーシングツール (プロファイラだと思ってください)を紹介した。 その中で実際にいくつかのアプリのトレースを集めた。手頃な実例になっている。 アプリの起動 このデータ をダウンロードして、ui.perfetto.dev から開いてほしい。 以下画面写真: このトレースは Pixel 2 という電話機の上で TikTok というアプリの起動直後 5 秒間をキャプチャしている。 細かいところはわからなくていいけど、“CPU 0” から

    誰かがどこかで使ってる / morrita - Message Passing
    masterq
    masterq 2021/04/27
    SQLコンソールがあるんですね
  • 「強いメモリモデル」と「弱いメモリモデル」 - yamasaのネタ帳

    Apple M1についての面白い記事を見かけて、久しぶりにメモリモデル屋(?)の血が騒いだのでブログを書く。 note.com 強いメモリモデル 現代のCPUアーキテクチャでは、x86(64bit, 32bitどちらも)が「強いメモリモデル」を採用しており、それ以外のメジャーなCPUが「弱いメモリモデル」を採用している。この「強いメモリモデル」「弱いメモリモデル」について、まずおさらいしておこう。 以下のように、2つの変数a, bに対して異なるCPUコアが同時にアクセスしたとする。 int a = 0; int b = 0; CPU1: a = 1; b = 1; CPU2: int r1 = b; int r2 = a; (上記はC言語に似た疑似コードを用いているが、実際は機械語命令になっていると考えてほしい。つまり、CPU1は変数a, bの示すメモリアドレスに対するストア命令を実行して

    「強いメモリモデル」と「弱いメモリモデル」 - yamasaのネタ帳
  • GitHub - syarochan/Operating-Systems-Three-Easy-Pieces-in-japanese

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - syarochan/Operating-Systems-Three-Easy-Pieces-in-japanese
  • 1