タグ

linuxに関するtobetchiのブックマーク (18)

  • Linuxにおけるデバイスファイルの仕組み

    Linuxにおけるデバイスファイルはデバイスをファイルという概念を通して扱えるようにしたものです。デバイスファイルは通常のファイルと同様に読み書きを行うことができます。しかし実際には、その読み書きはデバイスドライバを通じてデバイスの制御に変換されます。 この記事では、デバイスファイルへの読み書きがどのようにデバイスの制御に変換されるのかを説明します。デバイスファイルはデバイスドライバとファイルの2つのコンポーネントに依存したものであるので、最初にデバイスドライバ、次にファイルについて説明し、最後にデバイスファイルがどのようにデバイスドライバと結び付けられるかを解説します。 この記事の内容は主に詳解 Linuxカーネル 第3版及びhttps://github.com/torvalds/linux/tree/v6.1によります。 目次 デバイスドライバ デバイスドライバの実例 read_wri

    Linuxにおけるデバイスファイルの仕組み
  • 日立に戻りたいわけがない。 - テストステ論

    新卒で日立へおれが新卒で入ったのは、日立製作所だ。 おれが面接を受けたのはシステム開発研究所というところだったが、 おれが入った年に研究所の再編成があって、横浜研究所というところに配属になった。 横浜研究所は横浜の戸塚というところにあり、 寮はそこまでバスで一のところにあった。 寮生活は隣人の先輩が発狂して泣き叫びだしたり、色々トラブルはあったが、 まぁ楽しかった。 寮というのはなかなかいいものだ。 京大で吉田寮や熊野寮にわざわざ住みたいという人がいることも微妙にだが理解出来る。 システム開発という名前のとおり、 そこはソフトウェアの応用研究をやってる研究所で、 と言っても企業の応用研究というのは事業所から依頼された研究(通称、依頼研)だったり、 あるいはもう少し先のことを考えた先行研と呼ばれるものがあったするくらいで、 大学のような研究をやってるというところではないのだが、 まぁおれ的

  • 「マスタリング Linux シェルスクリプト第 2 版」感想 - msksgm’s blog

    概要 「マスタリング Linux シェルスクリプト第 2 版」を読みました。 感想を書きます。 マスタリングLinuxシェルスクリプト 第2版 ―Linuxコマンド、bashスクリプト、シェルプログラミング実践入門 作者:Mokhtar Ebrahim,Andrew MallettオライリージャパンAmazon 概要 前提 目的 前提知識 読了時間 感想 次に関連で勉強すること まとめ 前提 目的 CI/CD の実力を上げるための手段としてシェルスクリプトの知識を獲得したかった 出版された当初にネットで評判が良く(こちらの記事を参考にした)、おもしろそうに見えた 特に、sed、awk あたりを入門したかった 前提知識 調べることはあっても、シェルスクリプトを体系的に学ぶのは初めてでした。 一応、1 月に「シェル・ワンライナー 160 ノック」を読んでいました。しかし、想定よりも難易度が高

    「マスタリング Linux シェルスクリプト第 2 版」感想 - msksgm’s blog
  • Apple M1環境でLinuxを動かす「Asahi Linux」のGPUドライバーがついに99%以上という成績でテストをパスしたという報告

    Appleが独自開発するSoC「M1」搭載Macでの動作を目指すLinuxディストリビューション「Asahi Linux」で、Linux開発系VTuberの朝日リナ氏が「GPUのカーネルドライバーがテストを99%以上パスした」と報告しました。 ???????????? My Linux M1 GPU driver passes >99% of the dEQP-GLES2 compliance tests!!!!! ???????????? Most of this is thanks to @alyssarzg's prior work on macOS, but now I can replicate it on Linux! ^^ pic.twitter.com/BTI4AIUTkC— Asahi Lina / 朝日リナ //nullptr::live (@LinaAsahi) Fi

    Apple M1環境でLinuxを動かす「Asahi Linux」のGPUドライバーがついに99%以上という成績でテストをパスしたという報告
  • リーナス・トーバルズが開発者に「ギリギリになってあわてて作業するのは高校で卒業すべき」と助言

    by TED Conference Linuxの生みの親でLinuxカーネル開発の優しい終身の独裁者としても知られるリーナス・トーバルズ氏が、Linux 6.1の初期リリース候補版となるLinux 6.1 -rc1をリリースした際に「開発サイクルのもっと早い段階でコードを追加してほしい、ギリギリになって作業するのは高校生で卒業するべきだ」と開発者に呼びかけたと報じられています。 Linux-Kernel Archive: Linux 6.1-rc1 https://lkml.iu.edu/hypermail/linux/kernel/2210.2/00359.html Linus Torvalds to Linux devs: Stop pulling all-nighters • The Register https://www.theregister.com/2022/10/17/li

    リーナス・トーバルズが開発者に「ギリギリになってあわてて作業するのは高校で卒業すべき」と助言
  • UnixPornをお洒落に楽しむ

    UnixPornとは? 「UnixPorn」というワードを見かけた事はありますか? もし、初耳だという方は「UnixPorn」をgoogleで画像検索してみましょう。 大雑っぱに言えば、「UnixPorn」とは、 PC-UNIXのカスタマイズされたデスクトップスクリーンショットのことや、 そのスクリーンショットが沢山投稿されているredditの板のことを指しています。 r/unixporn Submit screenshots of all your *NIX desktops, themes, and nifty configurations, or submit anything else that will make ricers happy. https://www.reddit.com/ そして、「UnixPorn」は、このちょっといかがわしげなPornという文字と、 ダークでハ

    UnixPornをお洒落に楽しむ
  • Electronの代替を目指す軽量なRust製フレームワーク「Tauri」、リリース候補版に到達

    WindowsmacOSLinuxなどのクロスプラットフォーム対応のデスクトップアプリ開発を容易にするフレームワークとして高い人気を持つフレームワークが「Electron」です。 ElectronはChromiumとNode.jsを用いることで、HTML/CSS/JavaScriptのWebテクノロジーによってデスクトップアプリケーションを開発できるのが最大の特徴です。 いまやElectronは、Visual Studio CodeやMicrosoft Teams、SlackGitHub Desktop、そして最近話題のNotionなど、さまざまなアプリケーションに採用されています。 このElectronの優れた特徴を備えつつ、よりメモリ消費量が小さくファイルサイズもコンパクトで、高いセキュリティを備え、柔軟なライセンスを実現しようと開発されたのが「Tauri」です。 Tauriは、

    Electronの代替を目指す軽量なRust製フレームワーク「Tauri」、リリース候補版に到達
  • パスワードの1文字目に「~(チルダ)」を使って痛い目にあった - Qiita

    何を言っているんだと思われるかもしれないですが、気軽にパスワードの1文字目に「~」を使わないほうがいいというお話です。 起こった問題 踏み台サーバー経由でサーバーAに接続して作業をしていた時の話です。 いわゆる多段 ssh 接続というもので、リモートワークになってからは結構使われる方も多いかと思います。 サーバーA上で root 権限になろうと sudo su - してパスワードを入力したら Connection to xxx.xxx.yyy.zzz closed. の文字とともにサーバーAから追い出されてしまいました。 なにかの間違いだろうと何度か挑戦していたのですが、結果はサーバーAから切断され踏み台サーバーに戻る羽目に。。。 そのときに入力していたパスワードが ~.xxxxxxxxxx のような ~ から始まるものでした。 調査 ~ って何か意味があったよなーと思ってどう調べようかと

    パスワードの1文字目に「~(チルダ)」を使って痛い目にあった - Qiita
  • 「MacはLinuxだった」って本当? 「そうだね……」元Mac雑誌編集者は昔語りを始めた

    MacLinuxだった」って当? 「そうだね……」元Mac雑誌編集者は昔語りを始めた:ヤマーとマツの、ねえこれ知ってる?(1/4 ページ) 経歴だけは長いベテラン記者・編集者の松尾(マツ)と、幾つものテック系編集部を渡り歩いてきた山川(ヤマー)が、ネット用語、テクノロジー用語で知らないことをお互い聞きあったり調べたりしながら成長していくコーナー。交代で執筆します。 マツ 「MacLinuxだった」という趣旨のツイートが話題になっていて、ああそういうこともあったなあ、と思い出したので、ちょっと昔語りしようかなと。茶でも飲みながら。 ヤマー 私は紅茶を用意してきます。 戻ってきました。macOSは何がベースになっているかって話ですよね。 マツ 結論から言っちゃうと、現在のmacOSはUNIX系列のOSではあるけど、Linuxではないです。macOSのベースになっているのはDarwin。

    「MacはLinuxだった」って本当? 「そうだね……」元Mac雑誌編集者は昔語りを始めた
  • rjとtとjqコマンドでHTTPレスポンスを試験する - ゆーすけべー日記

    Web 開発者は HTTP レスポンスをよく見る。 以前 CDN を導入する際に、キャッシュがヒットしているかどうか、どこのエッジがキャッシュを返しているかを確認するためにヘッダをよく見ていた。また、ヘッダだけではなく、TTFB といったレスポンスタイムも気にしている。とにかく HTTP レスポンスをよく見る。 HTTP レスポンスを確認する3つの方法 Chrome さえあれば DevTools を見て一目瞭然である。 とはいえ、コマンドラインで確認したい時がしばしばある。 GUI を操作するよりも手軽である。 その場合はcurlコマンドを叩けばよい。 これでプロトコル、ステータス、ヘッダが分かる。 また、レスポンスタイムを測りたければ、その名もttfb.shというcurlをラップしたコマンドラインツールがある。 https://github.com/jaygooby/ttfb.sh この

    rjとtとjqコマンドでHTTPレスポンスを試験する - ゆーすけべー日記
  • UNIXができた頃のコンピューター事情

    UNIXができたころのことを話そうとするとその頃のコンピューター事情が今とだいぶ違うのでなかなか話が伝わりません。そこでそのころ(1970年ごろ)のコンピューター事情について、正確性はちょっと置いておいて、分かりやすいようにざっくりと説明したいと思います。 アポロ11号の月面着陸が1969年なのでその辺りの映画などに出てくるでかいコンピューターを想像するとイメージしやすいかもしれません。 ## 大雑把な分類 初期のUNIXが開発されたころ(1970年ごろ)に使われていたコンピューターは主に下記の二種類でした。 - メインフレーム - ミニコン(ミニコンピューター) このころ主に"コンピューター"といえば今で言う"メインフレーム"のことを指していました。 マイコン(マイクロコンピューター)/パソコンは1980年ごろ普及しました。しかしパソコンでUNIXを動かすのが実用的になったのは1990年

    UNIXができた頃のコンピューター事情
  • えっちな grep をつくった - はやくプログラムになりたい

    H(uman-friendly) な grep コマンド hgrep をつくりました. github.com '\w+ で検索した時の出力 ファイルを特定のパターンで検索し,マッチした箇所を構文ハイライトしたコード片で表示します.超ざっくり言うと,ripgrep で検索して bat でマッチ箇所付近を表示するような感じです. grep -C によるコンテキスト表示に似ていますが,マッチ行が近い時は1つのコード片にまとめる,周囲何行を表示するかをヒューリスティックに少し賢く決めているなど,ちょっと出力は工夫しています. 動機 手元のリポジトリでコードを検索する時は 単純に grep で検索してマッチ結果を眺める grep | fzf のように検索結果を fzf で絞り込んだりプレビューする vim $(grep -l ...) のように検索結果をエディタで開く あたりを使い分けているのですが

    えっちな grep をつくった - はやくプログラムになりたい
  • シェルスクリプトは変数代入で = の前後にスペースを置けない!・・・の本当の理由を知ると優れた文法が見えてくる - Qiita

    シェルスクリプトは変数代入で = の前後にスペースを置けない!・・・の当の理由を知ると優れた文法が見えてくるShellScriptBashUNIXshellPOSIX はじめに シェルスクリプトの変数代入で = の前後にスペースを置くことができない理由は、検索すれば「プログラマーの君! 勘違いするな! シェルスクリプトでは読みやすさのためにスペースを置くな!! という話」のような記事がすぐに見つかります。記事に書いてあるとおり変数代入とコマンド呼び出しと区別がつかないからです。それは間違いではないんですが、私はもう少し説明が足りないと感じています。そこで今回は = の前後にスペースを置けない当の理由を解説したいと思います。 の前に皆さんにはこの話を読みながら、自分がシェルスクリプトの言語設計者だったとしたら、どういう言語仕様にするかを考えて欲しいです。なぜかと言うとシェルスクリプトの文

    シェルスクリプトは変数代入で = の前後にスペースを置けない!・・・の本当の理由を知ると優れた文法が見えてくる - Qiita
  • 日米OSDN離合集散、苦闘の21年史

    さて、ついに退職エントリだ。私は米国のオープンソース・ムーブメントを日で再現するためのコアを作るために民間企業へやってきたはずだった。それから21年、随分と長い航海になってしまったが、結局様々な尻拭いを続けてきたという感慨ばかりが起きてくる。一つの歴史として書き残すいいタイミングなのでその苦闘を振り返っておこう。 なお、長く付き合いが続いてしまう米国側法人は下記のように名称が変化している。なるべく頭に米国と付けて日側法人と区別しやすいように記述するが、突然名称が変わったりするので注意してほしい。多くがもはや消滅した法人のことなので、さすがに一気読みするような酔狂な人はほぼいないと思うが。 VA Research      Andover.net ↓         ↙︎ (VAによる買収) VA Linux Systems ↓        ↘︎ (Andoverから社名変更) VA

    日米OSDN離合集散、苦闘の21年史
  • LinuxがM1チップ搭載Macの標準デスクトップ環境として使用可能に - iPhone Mania

    LinuxAppleシリコン搭載Macで動作させることを目的としたAsahi Linuxが、M1チップ搭載Macの標準デスクトップ環境として使用可能となった、と伝えられています。 粗削りな部分はあるけれど普通に使用できる! 単にLinuxを動作させるだけでなく、日常的なOSとして使用できるように磨き上げることを目指すAsahi Linuxプロジェクト/コミュニティは、GPUアクセラレーションはまだ有効にできないものの、LinuxをM1チップ搭載Macの標準デスクトップ環境として問題なく使えるレベルに到達した、と発表しました。 「多くの粗削りな部分や欠けているドライバがあるものの、ここまでくれば、開発は半ば自動的に進む」と、進捗レポートに記されています。 SoCの世代を超えてハードウェアインターフェースの互換性を保持 「AppleはSoCの世代を超えてハードウェアインターフェースの互換性を

    LinuxがM1チップ搭載Macの標準デスクトップ環境として使用可能に - iPhone Mania
  • 【書評】「Linuxで動かしながら学ぶTCP/IPネットワーク入門」手を動かしてTCP/IPを学びたい人におすすめの一冊 | DevelopersIO

    こんにちは。CX事業部MAD事業部のYui(@MayForBlue)です。 最近読んだ「Linuxで動かしながら学ぶTCP/IPネットワーク入門」というが、楽しくTCP/IPに入門できて良いなと思ったのでご紹介させていただきます。 の目次 はじめに TCP/IP とは Network Namespace イーサネット トランスポート層のプロトコル アプリケーション層のプロトコル NAT ソケットプログラミング おわりに 付録 環境構築 シェルの基的な使い方 このを読んで学べること このではTCP/IPのネットワーク、パケットの流れを手元の仮想環境を使って学ぶことができます。 環境については、Network Namespace という、ネットワーク設定を分割して管理できるLinuxカーネルの機能を使います。 用意した環境の中で、通信を行うコマンドを自分で打ち込み、パケットの流れを

    【書評】「Linuxで動かしながら学ぶTCP/IPネットワーク入門」手を動かしてTCP/IPを学びたい人におすすめの一冊 | DevelopersIO
  • sudo su とかしてる人はだいたいおっさん

    sudo su と sudo -s はほぼ同じ。実行されるシェルが異なることがある。 sudo su - と sudo -i もほぼ同じ。環境変数のクリア的な意味だと sudo su - の方が強い。 以下は別に読まなくてもいい。 su 別のユーザーでシェルを実行するコマンド。自分は「す」とか「えすゆー」とかと呼んでる。 元は super user とか switch user とか substitute user の略だったらしい。 デフォルトでは root になるが、引数でユーザー名を指定するとそのユーザーになる。 新ユーザーのデフォルトのシェルとして設定されているシェルが実行される。 入力するパスワードは新ユーザーのパスワード。 ~% su Password: (rootのパスワード) root@hostname:/home/tmtms# id uid=0(root) gid=0(r

    sudo su とかしてる人はだいたいおっさん
  • ネットワークスタック内の謎の2バイトについて探る - Handwriting

    この記事はTSG Advent Calendar 2016 - Adventarの25日目として書かれました。 自分既にOBですし、25日目ともなると「何か壮大なネタを…」とか考えあぐねていたのですが、現実的なネタを思いつけなかったので最近やってたことでも書きます。 先日LinuxのNICドライバの開発についてのエントリを書いていたのですが、その与太話でもしようかなと思います。 lv4.hateblo.jp sk_buff構造体 Linuxのカーネル内では、ネットワークパケットはsk_buff構造体によって扱われています。 (ソースコード → Linux/include/linux/skbuff.h - Linux Cross Reference - Free Electrons) 説明としては How SKBs work が非常にナイスだと思います。 要点としては head data t

    ネットワークスタック内の謎の2バイトについて探る - Handwriting
  • 1