Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
emacs-18.59の会 / KOF2018-tokaidolug-LT
Search
Izumi Tsutsui
November 10, 2018
Programming
1k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
emacs-18.59の会 / KOF2018-tokaidolug-LT
関西オープンフォーラム2018 2日目 東海道らぐ 大阪湾ライトニングトーク大会 in KOF2018 で飛び入り発表させていただいた LTスライドです
Izumi Tsutsui
November 10, 2018
More Decks by Izumi Tsutsui
See All by Izumi Tsutsui
CPUクロック20MHz RAM 16MBの LUNAで 30秒アニメGIF再生デモ / OSC2026Kyoto
tsutsui
0
70
OSC東京でいただいた UIAPduinoマイコンボードで PSG演奏と液晶ドッド絵デモ / osc2026Kagawa
tsutsui
0
350
NetBSD+Raspberry Piで 本物のPSGを鳴らすデモを ブラッシュアップしました / osc2026Tokyo-spring
tsutsui
1
100
NetBSD+Raspberry Piで 本物のPSGを鳴らすデモを OSC駆動の7日間で作った話 / OSC2026Osaka
tsutsui
1
200
PC-6001でPSG曲を鳴らすまでを全部NetBSD上の Makefile に押し込んでみた / osc2025hiroshima
tsutsui
0
390
今年もNetBSD環境を使って PC-6001のPSG演奏デモを作った話 / KOF2025
tsutsui
0
390
NetBSD/luna68kの歴史解説と、LUNAでアニメGIF再生デモと ついでにPC-6001デモも作った話 / OSC2025Kyoto
tsutsui
0
180
NetBSDの解説と NetBSD/luna68kの歴史と ついでにPC-6001展示 / OSC2025Tokyo-spring
tsutsui
0
260
GitHub Actionsを使ってNetBSDマイナー機種用のビルドテストCIを書いてみた話 / OSC2025Osaka
tsutsui
0
220
Other Decks in Programming
See All in Programming
Hono + Inertia + React で LP を構築した話
oukayuka
2
190
関東Kaggler会_NVIDIA_Nemotron_コンペ_振り返り
rick_ds
0
760
AIエージェント時代のコードレビューを設計する
nogu66
2
210
MySQLとPostgreSQLって何が違うの?
akagami
0
150
ソフトウェアエンジニアにとっての生成AI - 特性を知って使い倒す / generative ai for software enginner
kishida
7
2.2k
iOS開発×AI駆動開発 〜最近使って便利だったスキルの話〜
nogu66
0
120
T3DD26: From RAGs to Riches
martinhelmich
0
130
いまどきの Codex で開発する visionOS アプリの開発スタイルについて
karad
0
170
tsc.rip を支える技術 / Kyoto.なんか #8
susisu
0
4.1k
Gmail/Google DriveをトリガーにAIエージェントを動かそう! / Run AI agents with Gmail/Google Drive as triggers!
har1101
3
460
言葉の格闘技のススメ~紙とペンと言葉から始める、キャリアの描き方~
progresscicada
2
190
typoなんかねぇよ
raspython3
0
630
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Why Our Code Smells
bkeepers
PRO
340
58k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
ラッコキーワード サービス紹介資料
rakko
1
4.6M
Automating Front-end Workflow
addyosmani
1369
210k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
500
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
4
530
Tell your own story through comics
letsgokoyo
1
1.1k
The SEO identity crisis: Don't let AI make you average
varn
0
550
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
310
Transcript
emacs-18.59 の会 関西オープンソース 2018 東海道らぐ LT Izumi Tsutsui
[email protected]
Twitter:
@tsutsuii Mastodon: @
[email protected]
emacs 18.59 1992年 10月 リリース
なぜ emacs 18.59 なのか
KOF2015のスライドを参照 https://speakerdeck.com/tsutsui/kof2015-emacs-18-dot-59-and-mule-1-dot-1-on-netbsd-7-dot-0
https://speakerdeck.com/tsutsui/kof2015-emacs-18-dot-59-and-mule-1-dot-1-on-netbsd-7-dot-0?slide=8
gentoo パッケージの存在 https://twitter.com/Chris_J_Baird/status/566596051042185216
https://packages.gentoo.org/packages/app-editors/emacs
gentooのパッケージを ベースに、NetBSDで 64ビットを含む 各アーキテクチャで 動くように修正
githubにあります https://github.com/tsutsui/emacs-18.59-netbsd
ついでに ubuntu debian ArchLinux (含む64ビット) でも動くように修正 Raspbian も最近対応
ビルド方法はブログとかに 書いてるので適当に 「emacs 18.59」 とかで検索 http://ch.nicovideo.jp/tsutsui/blomaga/ar1554908
emacs-18.59の会 活動内容
今時の環境で emacs-18.59を ビルドする (使うとは言っていない)
https://social.mikutter.hachune.net/@shibafu528/100113578982480505
https://social.mikutter.hachune.net/@shibafu528/100113584123075075
gentooで入れる のもありです
github issue も待ってます https://github.com/tsutsui/emacs-18.59-netbsd/issues/1
古いバイナリの ハマりポイント
昔のバイナリはポインタの扱いが かなり適当 ポインタにintぶち込んでたり 上位バイトに別の値入れてたり 64ビット対応も考えられてない emacs unexec 機構のハック
※LT発表時は undump と書いてましたが unexec (or dump) が正しい表記でした
起動時に大量のelispを読むと 起動に時間がかかる ビルド時に素のemacsを作ったあと 「elispを読み込んだ状態」で その時のメモリの内容を読み出して そのままバイナリとして書き戻す unexecとは
これが 最近の セキュリティ機構 と相性が悪い
https://social.mikutter.hachune.net/@shibafu528/100113462881160942
https://social.mikutter.hachune.net/@shibafu528/100113580412611324
https://ja.wikipedia.org/wiki/アドレス空間配置のランダム化 アドレス空間配置のランダム化(英語: address space layout randomization, ASLR)とは、重要なデータ領域 の位置(通常、プロセスのアドレス空間における実行 ファイルの基底とライブラリ、ヒープ、およびスタック の位置が含まれる)を無作為に配置するコンピュータセ
キュリティの技術である。
PIE (Position Independent Executable) とかもハマりがち
昨晩の しばふ氏の 会員活動
https://social.mikutter.hachune.net/@shibafu528/101041789930206039
https://social.mikutter.hachune.net/@shibafu528/101041961529897887
https://social.mikutter.hachune.net/@shibafu528/101041971794509433
手段(emacs 18.59)のためには 目的(ビルド・環境・使用)を 選ばない とにかくビルドできたら満足 動かなかったら直すorバグレポート emacs-18.59の会
まとめ
おわり