2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

Linux使ってみて普及するわけないと思った時89

1 :login:Penguin:2016/10/30(日) 09:56:12.66 ID:mEpRJ6Ty.net
前スレ
Linux使ってみて普及するわけないと思った時88
http://hayabusa6.2ch.net/test/read.cgi/linux/1471413499/

今回もマック信者が憤死するの?

261 :login:Penguin:2016/11/10(木) 16:01:41.97 ID:Dny249wh.net
互換性が失われたときはいいのよ

それは再ビルドしても動かない

だがLinuxの場合、ダイナミックリンクとウソついてるからタチ悪い話

ダイナミックリンクは互換性がある限りは再ビルドなしで動かせるようにしたものだ

スタティックリンクなら自分の中に持っているから変更ができず、
よって互換性問題もそもそも存在しない

ウソダイナミックだから互換性があるにも関わらず余計な手間をかけさせる

262 :login:Penguin:2016/11/10(木) 16:27:57.74 ID:yDRtJe9R.net
https://abi-laboratory.pro/tracker/timeline/glibc/
https://abi-laboratory.pro/tracker/timeline/gtk+/
https://abi-laboratory.pro/tracker/timeline/fontconfig/

とりあえず各ライブラリのバージョン間のバイナリ後方互換性がどの程度維持されてるかのデータ置いときますね ニッコリ

263 :login:Penguin:2016/11/10(木) 17:17:23.42 ID:lwOzdpXH.net
https://social.msdn.microsoft.com/Forums/ja-JP/392edbd0-aa19-4cb4-a0c5-0f7aa3066731/dll?forum=csharpgeneralja

264 :login:Penguin:2016/11/10(木) 17:19:24.25 ID:lwOzdpXH.net
DLLとは、動的なリンクによって利用されるライブラリのことである。
Windowsでは、DLLファイルの拡張子として「.dll」が付く。
DLLでは、様々なアプリケーションプログラムで使用される汎用的な
機能がモジュール化されており、実行ファイルがリンクを読み込むこと
によって共通して利用できるようになっている。

265 :login:Penguin:2016/11/10(木) 22:57:47.06 ID:gQKYyR/k.net
>>262
各ライブラリっていうわりにたった三つじゃねーかw
よく使われるもの上位10個ぐらいは書きなよ

266 :login:Penguin:2016/11/10(木) 23:33:00.97 ID:nwhHmVhn.net
>>265
いや十分だろ

267 :login:Penguin:2016/11/11(金) 02:08:49.47 ID:GGHDE/pq.net
>>236
今まではアプリ開発者が、他人が作ったライブラリに関して、無関心だった。
アプリが依存しているライブラリが、更新されたら、新しいものを使うだけだった

つまり、1.0も含めて、それ以降のすべてのバージョンを受け入れる。
1.0 <= 依存ライブラリ

2.0は、メジャー更新だから、インターフェースが変わるため、
実行される前にリンクエラーとなり、アプリは実行されないので安全

例えば、自分は関数、abc(引数1)を使っていたが、
その関数は、abc(引数1, 引数2)に更新されたため、引数の数が合わず、リンクエラー

1.1は、マイナー更新だから、インターフェースが変わらないから、アプリは実行されるが、
関数abc内で処理が変わったため、バグるようになるかも知れない

この場合、エラーの直前まで、中途半端に実行されるため、
外部ファイルなどに保存していた場合、不整合が起きるので危険

だから最近では、マイナー更新でも動かないように指定する。
1.0 <= 依存ライブラリ < 1.1

1.0.1, 1.0.2など、バグ・セキュリティ修正のみを認める

アプリ開発者は、依存ライブラリが更新されたら、
その都度、自分でテストして、自分のアプリも更新する

268 :267:2016/11/11(金) 02:20:50.64 ID:GGHDE/pq.net
自己修正
>2.0は、メジャー更新だから、インターフェースが変わるため、
>実行される前にリンクエラーとなり、アプリは実行されないので安全

リンクエラーでも、その関数が使われる、直前までは実行されてしまうのか?
それともリンクエラーは、アプリ起動前のチェックだったか?

よくわからんけど、リンクエラーの直前までは実行されてしまうのなら、
そこまでの処理で、外部ファイルなどに保存していた場合、不整合が起きるので危険

269 :login:Penguin:2016/11/11(金) 03:47:47.07 ID:LzqWI+89.net
>>268
Windows DLLならライブラリ使用手続き時にファイルが見つからなくてエラー
概ねDLLを使用してるソースファイルにある関数実行時かクラスのインスタンス生成時

270 :login:Penguin:2016/11/11(金) 04:08:11.30 ID:wv3QEhkX.net
ダイナミックリンクライブラリ(Windows)/共有ライブラリ(Linux)ならこうだ
みたいな決め付けで語ってる人が多い気がするけど仕組み上は大差ない
ライブラリ提供側の運用や管理の厳格さとシステムで共有されるライブラリの
数がWindowsとLinuxで遭遇する不具合の確率に影響してるのだろう

総レス数 1000
311 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★