はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

はてなブックマーク

  • はてなブックマークって?
  • アプリ・拡張の紹介
  • ユーザー登録
  • ログイン
  • Hatena

はてなブックマーク

トップへ戻る

  • 総合
    • 人気
    • 新着
    • IT
    • 最新ガジェット
    • 自然科学
    • 経済・金融
    • おもしろ
    • マンガ
    • ゲーム
    • はてなブログ(総合)
  • 一般
    • 人気
    • 新着
    • 社会ニュース
    • 地域
    • 国際
    • 天気
    • グルメ
    • 映画・音楽
    • スポーツ
    • はてな匿名ダイアリー
    • はてなブログ(一般)
  • 世の中
    • 人気
    • 新着
    • 新型コロナウイルス
    • 働き方
    • 生き方
    • 地域
    • 医療・ヘルス
    • 教育
    • はてな匿名ダイアリー
    • はてなブログ(世の中)
  • 政治と経済
    • 人気
    • 新着
    • 政治
    • 経済・金融
    • 企業
    • 仕事・就職
    • マーケット
    • 国際
    • はてなブログ(政治と経済)
  • 暮らし
    • 人気
    • 新着
    • カルチャー・ライフスタイル
    • ファッション
    • 運動・エクササイズ
    • 結婚・子育て
    • 住まい
    • グルメ
    • 相続
    • はてなブログ(暮らし)
    • 掃除・整理整頓
    • 雑貨
    • 買ってよかったもの
    • 旅行
    • アウトドア
    • 趣味
  • 学び
    • 人気
    • 新着
    • 人文科学
    • 社会科学
    • 自然科学
    • 語学
    • ビジネス・経営学
    • デザイン
    • 法律
    • 本・書評
    • 将棋・囲碁
    • はてなブログ(学び)
  • テクノロジー
    • 人気
    • 新着
    • IT
    • セキュリティ技術
    • はてなブログ(テクノロジー)
    • AI・機械学習
    • プログラミング
    • エンジニア
  • おもしろ
    • 人気
    • 新着
    • まとめ
    • ネタ
    • おもしろ
    • これはすごい
    • かわいい
    • 雑学
    • 癒やし
    • はてなブログ(おもしろ)
  • エンタメ
    • 人気
    • 新着
    • スポーツ
    • 映画
    • 音楽
    • アイドル
    • 芸能
    • お笑い
    • サッカー
    • 話題の動画
    • はてなブログ(エンタメ)
  • アニメとゲーム
    • 人気
    • 新着
    • マンガ
    • Webマンガ
    • ゲーム
    • 任天堂
    • PlayStation
    • アニメ
    • バーチャルYouTuber
    • オタクカルチャー
    • はてなブログ(アニメとゲーム)
    • はてなブログ(ゲーム)
  • おすすめ

    ChatGPT

『zenn.dev』

  • 人気
  • 新着
  • すべて
  • 月刊「Rustは低レイヤーで使ってもunsafeだらけになるから意味がない」廃刊のお知らせ

    204 users

    zenn.dev/garasubo

    組込みRustや自作OSなどにおいて、従来言語より高い安全性があるとされているRustは注目される一方、Rustでも低レイヤー分野で頻発するメモリアクセスやインラインアセンブラなどでunsafeブロックが存在が多くなりがちです。 このunsafeブロックが多くなるので、結局Rustでこのような低レイヤー分野を触っても意味がないのでは?安全ではないのでは?という疑問が投げかけられることがしばしばあります。 筆者はTwitterや過去のブログで、組込みRustにおいてのunsafeとの付き合い方について触れていきましたが、内容としては分散していたので今一度この疑問に対するアンサーをまとめることにし、この論争に終止符を打とうと思います。 Rustにおけるunsafeとは そもそもunsafeとは何かというのはThe Rust Programming Languageのドキュメントにも詳しく書かれ

    • テクノロジー
    • 2025/01/06 00:13
    • rust
    • あとで読む
    • os
    • unsafe
    • プログラミング
    • programming
    • メモリ
    • language
    • 言語
    • RustでRaspberry Pi Picoのベアメタルプログラミング

      12 users

      zenn.dev/garasubo

      これはRust Advent Calendar 2023の10日目の記事です。 Raspberry Pi Picoとは Raspberry Pi PicoはRaspberry Pi財団が開発しているマイコンボードで、よく知られているRaspberry Piとは異なり、Cortex-M0+という非常に小さいアーキテクチャのCPUを搭載しています。 具体的には通常のCortex-AシリーズにあったようなCPUモードがなく、MMUのようなページング機構もないため、Raspberry Piとは異なり、Linuxを動かすことはできません。 しかしながら、その分非常に省電力で動作し価格も安価です(秋月電子通商でこのブログ執筆時点で770円、無線機能がついたPico Wで1200円)。 ちょっとしたガジェットや自作キーボードのコントローラーに使う例などを見かけます。 RustでPicoを動かす 最もお手

      • テクノロジー
      • 2023/12/11 17:29
      • あとで読む
      • 動的型付け・静的型付け論争への私見

        3 users

        zenn.dev/garasubo

        プログラミング言語に関するこれがいいあれがいいという議論は半分くらい宗教戦争と化してよく白熱する。 その中でもう燃えあがる論争の一つが動的型付けと静的型付けの対立だ。 最近だと、とある有名OSSでTypeScriptをやめてJavaScriptに戻したことが大きな話題となった。 それに、乗っかって、Ruby開発者のMatz氏のツイートが掘り起こされたりした。 これらの方々に比べれば自分の実力・経験値は遠く及ばないとは思うが、たまにはと思いこの動的・静的型付けとプログラミングの生産性への自分の私見をまとめてみようと思う。 最初に断っておくと、これは自分の経験に基づく感想という側面が大きく、何か定量的・定性的な裏付けがあるものではないことを強調しておく。 日頃からRustのような強い静的型付け言語に関する発信をしていることからわかるように、自分は静的型付け言語を好んでいる人間であるということも

        • テクノロジー
        • 2023/09/14 13:08
        • 言語
        • 開発
        • プログラミング
        • Rust for Linuxでは独自のallocライブラリを使っている

          131 users

          zenn.dev/garasubo

          Rustを第二言語として採用してデバイスドライバなどのモジュールをRustで書けるようにする「Rust for Linux」が近々マージされる予定だともLinus氏自身が発言しています。 そんな期待のかかるRust for Linuxですが、提案された当初は期待こそされていたものの、様々な懸念点も指摘されていました。 その1つが標準ライブラリの一部であるallocクレートの設計です。 このクレートはヒープ領域を扱うBox、Vec、StringなどRustではお馴染みの構造体を提供しています。 Rustの標準ライブラリはOSのサポートを前提とした構造体も多くあります。そのため、OSそのものを書くようなベアメタルプログラミングにおいて標準ライブラリをそのまま使うことはできません。 使えるのはcoreと呼ばれる依存関係のない全く無いライブラリがありますが、allocはOSのサポートが必要なヒープ

          • テクノロジー
          • 2022/09/19 23:00
          • rust
          • linux
          • あとで読む
          • OS
          • 設計
          • プログラミング
          • Programming
          • Rust for Linuxを手元で試す

            51 users

            zenn.dev/garasubo

            RustをLinuxカーネルに組込みプロジェクト、Rust for Linuxが進行中です。 このプロジェクトはLinuxカーネル全体をRustで置き換えるわけではなく、第二言語としてRustを採用してデバイスドライバなどのモジュールを書くことができるようにしようというものです。 RustはOSのような低レイヤーソフトウェアを実装する言語として、C言語に代わる選択肢として注目されてきたわけですが、Linuxのような広く使われているシステムに採用されるとなればかなり熱いですね。 実際にLinuxのメインラインに取り入れられるにはまだまだ課題は多いものの、Linus氏を含むLinuxの開発者からのフィードバックも比較的ポジティブでこれからが注目されています。 そんなRust for Linuxを手元でビルドして動かしてみました。 一応、基本的な手順はレポジトリ内のドキュメントにまとまっているの

            • テクノロジー
            • 2022/06/27 07:50
            • Rust
            • linux
            • あとで読む
            • kernel
            • japanese
            • techfeed
            • Rustのcloneはディープコピーなのか

              8 users

              zenn.dev/garasubo

              Rust LT会でcloneメソッドについての話があった。 考えると、そもそもRustでディープコピーかそうでないかを考えた経験がほとんどないので、改めてcloneの動作についてまとめてみる。 ディープコピー vs シャローコピー JavaScript等でオブジェクトがネストするような形になっているオブジェクトを単純な複製すると、コピー元のネストしたフィールドの変更がコピー先に及ぶことがある。 let obj = { a: 0, b: 1, c: { d: 10 } }; let copy = { ...obj }; // またはObject.assign({}, obj)など obj.a = 5; obj.c.d = 100; console.log(copy.a); // => 0 console.log(copy.c.d); // => 100 cというフィールド内のdというフィール

              • テクノロジー
              • 2022/01/30 00:15
              • Rustでの低レイヤープログラミング 2021

                16 users

                zenn.dev/garasubo

                この記事は自作OS Advent Calendar 2021及びRust Advent Calendar 2021の記事として書かれています。 以前、Rustで組込みプログラミングや自作OS作成するにはという記事でも同じようなネタをやったのですが、この分野の進展は今年もいろいろあったので、自分の自作OSの進捗などもあわせて紹介したいと思います。 注目の資料・プロジェクト Rustを使った自作OS系の参考となる資料や実際に採用しているプロジェクトで以前の記事で紹介できていなかったものを中心に紹介します。 Rust for Linux Linux全体をRustで書き直すのではなく、第二言語としてデバイスドライバなどの一部のコンポーネントにのみRustを使えるようにというプロジェクトが進行中です。 これに関する話題をツイートするとかなりリアクションがつくことから、この手の話の中では最も熱い話題な

                • テクノロジー
                • 2021/12/13 08:30
                • Rust
                • techfeed
                • あとで読む
                • stm32-rsのクレートを用いてSTM32系マイコンボードのお手軽Rustプログラミング

                  3 users

                  zenn.dev/garasubo

                  Rustが組込み開発で注目されていて、すでによくできたドキュメント類が用意されています。 また、ペリフェラルドライバのクレートがいくつか用意されています。 STM32系であれば、stm32-rsコミュニティが管理するクレートを用いれば、USARTやLEDなどのモジュールをお手軽に利用できます。 今回は自分の手元にあるNUCLEO-F429ZI用にstm32f4xx-halクレートでシリアル通信を例に解説します。 実際にシリアル通信のループバックを組んだレポジトリを以下に用意しました。 garasubo/stm32f4xx-hal 依存するクレート このレポジトリで使用されているクレートから説明していきます。レポジトリ内のCargo.tomlを参照してください。 panic-halt:no_stdのプログラミングではパニックした際の関数をこちらから与える必要があります。panic-haltは

                  • テクノロジー
                  • 2020/11/03 15:54

                  このページはまだ
                  ブックマークされていません

                  このページを最初にブックマークしてみませんか?

                  『zenn.dev』の新着エントリーを見る

                  キーボードショートカット一覧

                  j次のブックマーク

                  k前のブックマーク

                  lあとで読む

                  eコメント一覧を開く

                  oページを開く

                  はてなブックマーク

                  • 総合
                  • 一般
                  • 世の中
                  • 政治と経済
                  • 暮らし
                  • 学び
                  • テクノロジー
                  • エンタメ
                  • アニメとゲーム
                  • おもしろ
                  • アプリ・拡張機能
                  • 開発ブログ
                  • ヘルプ
                  • お問い合わせ
                  • ガイドライン
                  • 利用規約
                  • プライバシーポリシー
                  • 利用者情報の外部送信について
                  • ガイドライン
                  • 利用規約
                  • プライバシーポリシー
                  • 利用者情報の外部送信について

                  公式Twitter

                  • 公式アカウント
                  • ホットエントリー

                  はてなのサービス

                  • はてなブログ
                  • はてなブログPro
                  • 人力検索はてな
                  • はてなブログ タグ
                  • はてなニュース
                  • ソレドコ
                  • App Storeからダウンロード
                  • Google Playで手に入れよう
                  Copyright © 2005-2025 Hatena. All Rights Reserved.
                  設定を変更しましたx