タグ

ブックマーク / w0.hatenablog.com (14)

  • Linuxの実行環境のisolationをもうちょっとちゃんとする今年は - w_o’s diary

    いままでpip実行するたびに、「これどこかのsetup.pyに一行でもid_rsaとかfirefoxのprofileデータをどこかにアップロードするコード混じってたら終わりだよな」と思ってたけど、 https://pytorch.org/blog/compromised-nightly-dependency/ いよいよそういうことが起こってきたので、なんとか対応したほうがいいという気持ちになった。今年中に使用感を悪化しない範囲でどこまでできるかを探りたいと思いますね。 ブラウザを別UIDで実行する firefoxのデータに自由にアクセスできたらMFAとか意味ないんだよなあ… ブラウザのデータを別プロセスから読みたいとか、ブラウザにパイプ繋げたりとかしたい場合はないので、別ユーザにして、isolationすべきという気がする。 firefoxだけ起動できる UID を作って、その UID で

    Linuxの実行環境のisolationをもうちょっとちゃんとする今年は - w_o’s diary
    masterq
    masterq 2023/01/05
    "setup.pyに一行でもid_rsaとかfirefoxのprofileデータをどこかにアップロードするコード混じってたら終わりだ"
  • Vala - w_o’s diary

    なんか GTKUI を作ろうかと思って、Valaで書くのがよさそうな気がしたのでValaというのを触ってみたが、なんか思ってたよりよかったな。 まあRustが打倒C++できそうな今の時代に、わざわざマイナーなValaを使ってもあんま良いことないと思うけど、まあ良かったと思う点を書いておく リファレンスカウンタと文字列があってコンパイルがはやい 個人的には、プログラミング言語の機能って、C99 に自明な場合だけでもいいのでうまくやってくれるリファレンスカウンタと、文字列のconcatが簡単にできるぐらいで十分だと思ってたのだけど、大体そのぐらいの機能になっててよかった。 リファレンスカウンタやunownedは、Rustの所有権と比べたら雰囲気ぐらいの機能しかなくて、安全でないパターンが書けてしまうのはたしかにそうなんだけど、実際プログラム書いてると所有権は雰囲気ぐらいでなんとかするふん

    Vala - w_o’s diary
  • swayからi3へ移行しました - w_o’s diary

    すいません。 これはswayに問題があったわけではなくて、うちのRADEONをつけるとマザボごと死ぬので諦めた次第であります。(電源ボタンもきかなくなる) 正直Ryzenってすぐ不安定環境にならないですか…私は電圧オフセット+0.250V 追加して運用してる。これやらないとLinuxだとsoft lockupして死ぬ。これはRADEONでなくてもなる。 https://w0.hatenablog.com/entry/20170621/1497988036 この頃は出ないと書いてあるな。なんかこのあとBIOSアプデトしたら死ぬようになって、それ以降マザボもRyzenもメモリも更新したけど安定したときない。 見てる不安定現象 Linux で soft lockup する → これは電圧盛れば解決する 再起動に失敗する → これは解決したことない 突然マザボごと死ぬ → これは手元のRADEON

    swayからi3へ移行しました - w_o’s diary
    masterq
    masterq 2021/04/16
    なんと。。。GPUに問題が。。。
  • i3からswayへ移行し、gccemacs + pgtk にした - w_o’s diary

    もう戻らないでいけるやろ。 Xorg はマルチディスプレイのときにディスプレイごとにスケール変えるのができなくて微妙なことをやってたがもう考えなくていい。 emacs を pgtk にしたので、Xwaylandも無くてもいける。Arch なら emacs-native-comp-git-enhanced 入れれば一発で gccemacs + pgtk にできる。 環境変数は、.pam_environmentで変えるのがやりたいことだと思うのでそうしている。(どこから何でログインしても環境変数統一したい。pamを通らないことはないやろ) xrandr のかわりは、sway の config に書く ctrl:swapcaps も sway の config に書く Firefox は何故かデフォルトXになるので、 MOZ_ENABLE_WAYLAND=1 する NVIDIA GPUは…諦めよ

    i3からswayへ移行し、gccemacs + pgtk にした - w_o’s diary
  • x86よくできてる点 - w_o’s diary

    アーキテクチャと実装混ざってるけど 命令dispが32bit届く immも32bit入ることが多い メモリが順序守る(何回も書くが、メモリ順序が緩いことによって得られたCPU時間より失なった人間時間のほうが絶対多いから) ファームウェアがBIOSとUEFIの二種類しかない (ボードごとにカーネルにディレクトリ作るのやめろARM) 周辺デバイスがPCIに統一されててキャッシュの問題が起こりづらい(もうdma_alloc_coherentの挙動調べるの飽きた) キャッシュがソフト的に見れば一階層 (L2の挙動が定義されてないARMとかいう無名CPU) 除算とFPUが付いてる ABIがWin除けば32bitと64bitとx32の3種類しかない。 PCIe がキャッシュスヌープ付けてフルスピード近く出る lock cmpxchg が遅くない *fence が遅くない こういう問題で別のアーキがx8

    x86よくできてる点 - w_o’s diary
  • FPGA で 8088 (D8088-2) を動かして自作PCをやる - w_o’s diary

    これまでのあらすじ : https://twitter.com/tanakmura/status/1280152564898557952 FPGAでHello World以上のものが書きたいという気持ちは前からあったので、この機会に少し実用的はHDLを書くことにした。 なにをやっているかの解説を書いておこう。 ソースは、 https://github.com/tanakamura/jisaku_pc_8088 ここにある(上のツイートでは、タイミング問題があってLED点灯しないことがあると書いてるが、これは多分改善してあるはず。) こういう昔のCPUは、CPU側の命令実行とバスが直結していて、ポインタ0x80 を読むと、CPUの足に、そのまま0x80が出てくる。それを正しくハンドリングして、有効な命令バイト列を返せば、8088を動かすことが可能だ。 この実装では、この足から出てくる信号をデ

    FPGA で 8088 (D8088-2) を動かして自作PCをやる - w_o’s diary
  • ■ - w_o’s diary

    http://www.meti.go.jp/committee/summary/eic0009/pdf/020_02_00.pdf まあおもしろいけど…あんまりネガティブな文章を国が出すのってどうなの?っていう気がする。 現代日は、事は手に入り、戦争もなく、治安もよく、感染症は抑えられており、人類史上一番安全であることは疑いないだろう。 まあ別に安全であることが幸福に繋がるかというとそういうわけではなくて、何も起こらない、変わらない一日を60才まで生き続けるのと、「お国のために」と言って、明確な目標を持って25才で戦地で死ぬのと、どっちが虚しいかというのははっきりとは言えないだろう。 (ただ、戦地で死ぬ人は、死ぬ直前には、「安全なところでゆっくり暮らしたかった」と当に心から願ってそうな感じはするけど、緩慢な人生を送ってる人が、心から「俺は戦地で死にたい」とは思わないだろうし、そのへん

    ■ - w_o’s diary
    masterq
    masterq 2017/05/21
    もっと楽観的に考えようぜ、という話
  • 2014-12-25

    http://qiita.com/advent-calendar/2014/avx512 はい。 まあ余裕だったな。前(http://d.hatena.ne.jp/w_o/20130805 ) も似たようなこと書いたけど、「このぐらいのやる気ならコンスタントに出せるだろ」みたいな判断は年を取るごとに良くなってる気がする。(その分リスキーなことしなくなってるとも言える) 後半もっとダレて、「ベクタが長くなりました」と書くだけの作業になるかと思ったけど、最後までAVX-512新機能みたいなのを入れられたように思う。逆に言うと、AVX-512は20個ぐらい新機能増えてるということだが。 最近C++11のコードを少し真面目に見てるのでメモリモデルとかもちょっと見たのだけど、なんか納得いかない。 C++のメモリモデルは、変数へのアクセス毎に、壁を作るのだけど、コード書いてる時の意識としては、「こっか

    2014-12-25
    masterq
    masterq 2014/12/25
    "C++ のメモリ一貫性モデルってなんか直感とあわない 01:13"
  • 2014-05-28

    https://github.com/tanakamura/qo3/blob/master/kernel/boot.s#L345 x86のレジスタ順をrax,rbx,rcx,rdxに並べる奴はにわか。 http://pc.watch.impress.co.jp/docs/column/kaigai/20140526_650009.html に出てくる最初のスライド、一瞬Intelのスライドかと思わせる何かがあるよな。(白地に青い文字のタイトルみたいなのがそういう印象を与えそう) まあ、確認してから見ると、確かに、矢印の書きかたとかが、俺が作ったパワポみたいな雑さがあってintelらしくないという気がする。(まじめに考えるならブラインドテストすべきだが…) 何がよくないのかな…ぱっと見た感じ、 矢印が他のオブジェクトとかぶってるのがよくない 置いてあるオブジェクトの影/立体感の付けかたに統一

    2014-05-28
    masterq
    masterq 2014/05/28
    パワポ矢印について考察
  • Cell/B.E. - w_o’s diary

    ネットワークレイテンシ縮めるにはどうすればいいか考えてたときにひょっとしたら「CBEならできんじゃね?」とか思って、つまり、NICから直接SPEのLSに入れて、SPEからNICのレジスタ叩けば、DRAMのレイテンシも存在しないTCP/IPアプリケーションが作れるのではないかと思ったんですよね。 まあ、実験環境ないのでそう思った以上のことは無いけど… そのついでに、どのぐらいCBEがよく考えられていたか書いてもいいかなと思ったので書いておく。 (個人的に、Cellという表記/呼びかたはなんかあまり好きではなくて、Cell/B.E.もしくは、CBEと呼ぶので、以下、CBEはそういう意味で読んでほしい) はじめに CBEがあんまり普及しなかったとか、半導体業界の背景とか色々あって、多分新規アーキテクチャで世界制覇目指すとかやるのはCBEが最後になる可能性があるし(狭い部分では新規アーキテクチャと

    Cell/B.E. - w_o’s diary
    masterq
    masterq 2013/03/12
    むちゃくちゃ詳しかった
  • 2013-02-06

    デッドロックを回避しようとかいう話になって、隣の人が「CASがあればロックフリーできるしデッドロックしない、mutexとかいらん」とか言ってたので「いやロックフリーとか騙されてると思うが」と言ったら、「騙されてるとかなに?ちゃんと文章におこせよ」とか言われたので書いておく。 まあロックフリーつっても、Linuxの中でRCUとかいうのが使われてる程度の知識しか無いし、そもそもRCUってロックフリーなのかどうかも知らないので、危険だからあんまり触れないようにしてたのだけど、まあ、書けと言われたし書く。(受動的ブログ) 基的には 肝心な時に役に立たないのでは デッドロックしなければいいってもんでも無いと思うが の、二点。 まず、肝心な時に役に立たないのでは?というのは、多分、ロックとか面倒になるのって、ドライバというか、状態を持ったハードウェアとかネットワーク外部の処理が絡んでる時だと思うのだ

    2013-02-06
    masterq
    masterq 2013/02/07
    ”もしかして: ロックフリー だまされてる” 100%同意です。ロックフリーは大規模開発したことないゆとり。STMがあればデッドロックしないとかホザく奴は現実逃避してる
  • 2012-12-24 - J Intel HD Graphics 4000 とは何だったのか

    この記事はGPGPU Advent Calendar23日目の記事です。遅れてますが23日目です。 さて、IvyBridgeのGPUであるIntel HD Graphics 4000(以下HD4000)からはOpenCLがサポートされました。 が、Windowsでしか使えないうえに、理論性能がえーと、http://en.wikipedia.org/wiki/Comparison_of_Intel_graphics_processing_units によると、EU数*4*2*clockと書いてあるので、166.4[GFlops] と、CPUの217.6[GFlops]よりも低くてわざわざめんどくさいOpenCL書くメリットあんの?感がすごいです。 なのですが、このHD4000、他のGPUと違って素晴らしい点が一個あって、 http://intellinuxgraphics.org/docum

    2012-12-24 - J Intel HD Graphics 4000 とは何だったのか
  • 2005-11-11

    あー。やっぱり、継続して作り続けるというのは大事らしい。 僕のやりかた、すなわち、「思い付いた時の勢いだけでやってしまう」っていうのはよくないのかも。 けど、あんまり自分を追い詰めてやってるというわけでもないらしいので、だから、まあ、別に何かをするというでもなく。やっぱり、好きなようにやるのが一番だということで。 とりあえず、エディタを立ち上げてソース開いとくのがよいのかも、というような話。 あー、あと、SuicaにのってるのはZ80みたいなのとかなんだとか。 http://ja.wikipedia.org/wiki/IC%E3%82%AB%E3%83%BC%E3%83%89 ARM…MIPS…!! 洗濯物を干しっぱなしなのに気付いたのと雨が降り出したのが同時だった。危いところだったよ。 続き。結構飽きてきた感じが。大体見当が付いてしまうと、どうでもよくなってくるんだよな… あと、僕があま

    2005-11-11
  • 2005-11-09

    あーアレ。あれ。いや、別に投げやりになってるわけではないんだけど。 長い話を書き出すと、他の話書けなくなるっていうのがあるな。いや、まあいいんだけど。 続き。 全体像はつかめてきたんだけど、なんか予想をはるかに越える量になりそうな気が。こんなボリュームになる予定ではなかったんだけど… と、いうわけで、まずは、テーブル検索が最初だろう、という話だった。 unwind-dwarf2環境下では、unwindは、_Unwind_RaiseExceptionで行われる。これの実装はgcc/unwind.incにある。(これ、実は、_Unwinid_SjLj_RaiseExceptionと同じ実装なんだけど、uw_init_contextとuw_update_context、uw_install_contextを置き換えて、動作が変わるようにしてある。) と、いうわけで、_Unwind_RaiseEx

    2005-11-09
  • 1