並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 13 件 / 13件

新着順 人気順

printf 書式 pの検索結果1 - 13 件 / 13件

  • vmlinuxのヒミツ - VA Linux エンジニアブログ

    1. vmlinuzの怪 2. vmlinuxの入手 3. ELFファイル 4. ELFセクション 5. セクションの意味 6. Linuxのセクションとldscript 7. .cpuidle.textセクション 8. おわりに 執筆者 : 箕浦 真 1. vmlinuzの怪 Linux (カーネル) のファイル名といえば、/boot/vmlinuz-<version>だ。なんでlinux-<version>とかじゃないのだろうか。 vmの方は、これはおそらくBSD Unixのカーネルvmunixに倣ったものだろう。ベル研究所のResearch Unixを、VAXのハードウェアを生かして仮想記憶 (Virtual Memory) 機能を大幅に強化したため、vmunixとした。 zの方は、これは圧縮されていることを表す。なぜZで圧縮なのかはよくわからないが、圧縮の意味なのだ *1。 現在一

      vmlinuxのヒミツ - VA Linux エンジニアブログ
    • なぜシェルスクリプトはPOSIX準拠でも環境依存が激しいのか? 〜POSIXの問題点とその解決策の案〜 - Qiita

      なぜシェルスクリプトはPOSIX準拠でも環境依存が激しいのか? 〜POSIXの問題点とその解決策の案〜ShellScriptBashshellPOSIX まえがき この記事は「シェルスクリプトで高い移植性と生産性を両立させるシリーズ」の第一弾です。移植性と生産性を両立させるための前提知識として POSIX コマンドの問題点について解説します。第二弾では高い移植性と互換性を実現させるための考え方、そして第三弾、第四弾ではそれを実現するシェルスクリプトの具体的な実装テクニックを紹介します。第五弾では現実的な問題と回避方法について解説する予定ですがまだ具体的な内容は決まっていません。第五弾はその前に「シェルスクリプト入門(仮)」の記事を書こうと思ってるので少し遅くなると思います。もし興味がある方は記事をストックしていると更新時に通知されると思います。 2021-07-11 追記 記事が長くなった

        なぜシェルスクリプトはPOSIX準拠でも環境依存が激しいのか? 〜POSIXの問題点とその解決策の案〜 - Qiita
      • Q by LivesenseをWordPress on EC2からHugo on Cloudflare Pagesに移行しました - LIVESENSE ENGINEER BLOG

        はじめに 技術構成(before)と課題 技術構成(after)と選定の理由 改善したこと パフォーマンスの向上 デリバリー速度の向上 セキュリティ面でのリスク低下 大変だったこと 記事のマークダウン変換 段落分けと改行の区別 字下げ 書式の追加 Lintが必要になった 記事ごとのOGP画像周りの実装 URL変更に伴うリダイレクト設定 標準の検索機能がない おわりに はじめに 技術部の @mom0tomo , @etsxxx です。 技術部では、事業部横断的な仕事としてコーポレートサイトの運用も行っています。このたびWordPress on EC2で運用されてきた弊社のWebメディア(Q by Livesense)を、Hugo on Clouflare Pagesに移行しました。 q.livesense.co.jp 弊社のWordPress運用はやや特殊で、エンジニアがサーバーにSSHして

          Q by LivesenseをWordPress on EC2からHugo on Cloudflare Pagesに移行しました - LIVESENSE ENGINEER BLOG
        • 第692回 sysfsやbpftoolを用いたeBPFの活用 | gihyo.jp

          第688回と第690回では、カーネルのトレーシングツールとして注目されているeBPFを活用するためのツールとしてBCCを紹介しました。しかしながら、BCCだけがeBPFを扱えるツールというわけではありません。今回はツールなしに利用できるsysfsや、よりユーザーフレンドリーなトレーシングツールであるbpftoolを紹介します。 Python版BCCの問題点 これまで紹介していたBPF Compiler Collection(BCC)のツールはいずれもフロントエンドとしてPythonを使っていました。つまり利用者はまずPythonスクリプトを起動し、その中でeBPFのオブジェクトをコンパイルし、ロードすることでようやくトレースが始まっていたのです。 実行環境でBPFオブジェクトをビルドする必要があるこの方法にはいくつかの問題点が存在します。 実行環境にコンパイラをインストールする必要がある

            第692回 sysfsやbpftoolを用いたeBPFの活用 | gihyo.jp
          • The SYZBOT CTF

            目次 第0章 概要 0.1 syzbot とは? 0.2 主な登場人物紹介? 0.3 自己紹介:熊猫の Linux との関わりについて 0.4 今日のお話「バグハンティング」 第1章 Linux カーネルについて 1.1 Linux カーネルの規模について 1.2 Linux カーネルの制約事項について 1.3 Linux カーネルのデバッグ支援機能について 第2章 カーネルメッセージを読めるようにするための試行錯誤について 2.1 printk() に求められているものとは? 2.2 複数行分のメッセージをバッファリングする試み(2017年4月~) 2.3 メッセージ本文中にコンテキスト情報を埋め込む試み(2018年4月~) 2.4 1行分のメッセージをバッファリングする試み(2018年6月~) 2.5 再び1行分のメッセージをバッファリングする試み(2018年9月~) 2.6 再挑戦(

            • 第584回 SystemTapでカーネルの挙動を確認する | gihyo.jp

              カーネルを再構築することなくカーネルの動作を深く詳細に確認できると便利です。今回紹介するSystemTapを使うと、ちょっとしたスクリプト言語を書くだけで、カーネル上の特定の処理をフックし、必要な情報を収集・分析できます。 SystemTapがあるとうれしい理由 SystemTapは実行中のカーネルの処理をフックして、必要に応じて情報を収集し、出力するツールです。 カーネルのデバッグにおける代表的な手法と言えば「printk()の差し込み」です。printk()関連の関数を使えば多くの問題の状況を把握できますし、その情報がそのまま解決につながる例だってたくさんあります[1]⁠。 いわゆる「printk()デバッグ」は強力な手法ではあるものの、いくつかの弊害も存在します。 printk()を差し込むためにカーネルやモジュールをビルドし直さなくてはならない 環境に合わせたカーネルやモジュールの

                第584回 SystemTapでカーネルの挙動を確認する | gihyo.jp
              • C++で実装するなら(2023年時点での考え) - Qiita

                最近、C++を書いていない。 Pythonで書いていることが多いからだ。 C++を書けるということをどういう意味で期待していますか? C言語のレガシーがコードの安全性を損なっている。 C++言語はC言語の拡張という枠組みになっています。そのため、C言語ヘッダファイルをinclude することができてしまいます。 C言語では、ヘッダファイルのincludeする順序で動作が変わってしまうこと ヘッダファイル中の書かれているdefine マクロが、あなたの書いたソースコードを書き換えてしまうのです。 有名なところではwindows.h のmin() max() のマクロが多くのコードと相容れないという問題を持っています。 https://yohhoy.hatenadiary.jp/entry/20120115/p1 C言語のコードは、C++言語としても有効なコードになっているので、同じ弱点がC+

                  C++で実装するなら(2023年時点での考え) - Qiita
                • ffmpeg コマンドラインツール入門 第1回 - Morpho Tech Blog

                  はじめまして、株式会社モルフォのシニアリサーチャーの佐藤真希です。いつもと趣向を変えて、今回から3回にわたり ffmpeg というツールの使い方を紹介したいと思います。 ffmpeg というのは、動画ファイルの形式を変換したり、動画に画像処理を施したりすることができる高性能なフリーソフトです。動画処理技術の開発を行う上でなくてはならないもので、弊社でも広く使われています。(もちろん製品内部には使われていません。)とても高性能なのですが、使い方にクセがあって、検索してもまとまった情報を見つけるのがなかなか難しいのが現状です。 「ちょっと ffmpeg を使ってみたいけど、どうすればいいのか分からない」という人の役に立てばと思い、社内向けの資料の一部を公開します。なお、話を簡単にするために、以下のように限定された場合についてのみ考えます。 1つのファイルに動画ストリームが1つだけ含まれている

                    ffmpeg コマンドラインツール入門 第1回 - Morpho Tech Blog
                  • Ruby: "uselessシンタックスシュガー"シリーズ「引数のforwarding」(翻訳)|TechRacho by BPS株式会社

                    概要 原著者の許諾を得て翻訳・公開いたします。 英語記事: “Useless Ruby sugar”: Argument forwarding 原文公開日: 2023/11/24 原著者: zverok 日本語タイトルは内容に即したものにしました。段落編成を若干変更し、訳文の一部に強調を加えています。 forwarding(転送)は本記事では英ママとしました。anonymousは「無名」としました。 参考: プロと読み解くRuby 2.7 NEWS - クックパッド開発者ブログ 本記事は、最近のRubyで出現した"無用な"(さもなければ物議を醸す)構文要素を扱うシリーズ記事の一環です。本シリーズの目的は、そうした機能を擁護することでも批判することでもなく、その機能が導入された理由、設計、そして新構文を使うコードに与える影響を分析するための一種の「思考のフレームワーク」を皆さんと共有すること

                      Ruby: "uselessシンタックスシュガー"シリーズ「引数のforwarding」(翻訳)|TechRacho by BPS株式会社
                    • 週刊Railsウォッチ(20200428後編)Rubyのバックトレース順序が戻る、KubernetesでRailsをスケール、セキュリティソフト入れますか?ほか|TechRacho by BPS株式会社

                      2020.04.28 週刊Railsウォッチ(20200428後編)Rubyのバックトレース順序が戻る、KubernetesでRailsをスケール、セキュリティソフト入れますか?ほか こんにちは、hachi8833です。ついさっき見つけた記事がよかったので貼りました。 元記事: 世界各地の親が「ネット授業」に悲鳴を上げる訳 | ほしいのは「つかれない家族」 | 東洋経済オンライン | 経済ニュースの新基準 各記事冒頭には⚓でパーマリンクを置いてあります: 社内やTwitterでの議論などにどうぞ 「つっつきボイス」はRailsウォッチ公開前ドラフトを(鍋のように)社内有志でつっついたときの会話の再構成です👄 毎月第一木曜日に「公開つっつき会」を開催しています: お気軽にご応募ください ⚓Ruby ⚓Rubyのバックトレース順序が戻る Wow! I really appreciate th

                        週刊Railsウォッチ(20200428後編)Rubyのバックトレース順序が戻る、KubernetesでRailsをスケール、セキュリティソフト入れますか?ほか|TechRacho by BPS株式会社
                      • C++20の文字列フォーマットライブラリ std::format - Qiita

                        C++20では、ついに新しい文字列フォーマットライブラリが導入されます。 P0645R10 Text Formatting 今のC++標準ライブラリはCから引き継いだprintf系の関数群と、C++で導入されたiostreamという2つのフォーマットライブラリを持っています。 printf系関数には多くの問題があり、できればC++で使いたくはないものです1。 型安全ではない(Cの可変長引数そのものが) 書式ではなく、変数の型を指示する書式指定がたくさんある (%dと%ldなど) 標準ではユーザー定義型へ拡張できない 書式文字列は実装による差が大きい 一方でprintfスタイルには以下の利点もあり、C++より後発の言語でも書式文字列を使ったフォーマットは広く採用されています。 書式と引数がはっきり分かれている 普通の関数呼び出しとして理解可能 多くのプログラマーが慣れている C++20のフォ

                          C++20の文字列フォーマットライブラリ std::format - Qiita
                        • 【Go】型が特定のinterfaceを満たしているかをコンパイル時に確認させる方法 - Qiita

                          はじめに こんにちは、kenです。お仕事ではGoを使っています。 先日、Effective Go(Goの公式が出している慣用的なコーディングスタイルと実践を記したドキュメント)を読んでいたら興味深いことが書かれていたので今日はそれについて書こうと思います。 内容は「型が特定のinterfaceを満たしているかをコンパイル時に確認させる方法について」です。 Goのinterfaceについておさらい 本題に入る前にGoのinterfaceについてざっくり説明しておきます。interfaceについてもう知っているよという方はスキップしてください。 Go言語ではinterfaceをメソッドシグネチャの集合として定義します。 そして型がinterfaceを実装する際には、interfaceの定義に使ったメソッドを型に実装するだけでよく、「その型がどのinterfaceを実装しているか」については明示

                            【Go】型が特定のinterfaceを満たしているかをコンパイル時に確認させる方法 - Qiita
                          • GoのFormatterの書式における'+'フラグと独自実装 - Qiita

                            Go アドベントカレンダーその 2 の 10 日目のエントリーです。 はじめに Formatter でよく見かける %v と %+v といった + の違いを確認してみます。はじめに公式のドキュメント https://golang.org/pkg/fmt/ を確認しましょう。以下のようにあります。 when printing structs, the plus flag (%+v) adds field names 公式ドキュメントのとおり、構造体を print するときに %+v と + を付与するとフィールド名が付与されて出力されます。 package main import "fmt" func main() { p := &Person{ id: 1, Name: "tutuz", Country: "Japan", } fmt.Printf("%v\n", p) fmt.Print

                              GoのFormatterの書式における'+'フラグと独自実装 - Qiita
                            1