◎正当な理由による書き込みの削除について:      生島英之とみられる方へ:

フラグメンテーション対策スレ


動画、画像抽出 || この掲示板へ 類似スレ 掲示板一覧 人気スレ 動画人気順

このスレへの固定リンク: http://5chb.net/r/tech/1653264827/
ヒント:5chスレのurlに http://xxxx.5chb.net/xxxx のようにbを入れるだけでここでスレ保存、閲覧できます。

1デフォルトの名無しさん2022/05/23(月) 09:13:47.71ID:fHDd3cja
・フラグメンテーション
 メモリーの配置がどんどん虫食い状態になって空き領域が減っていく、
プログラムを組む上では怖いバグです。ネットワークやファイル、DB
などとのデータのやり取りが増えれば増えるほど発生して、
メモリーを圧迫し、最後には発生原因不明のメモリーエラーを発生させる、
プログラマにとっては非常に怖いバグです。

 そんなフラグメンテーションの対策を行うためのスレッドです。

2デフォルトの名無しさん2022/05/23(月) 09:16:06.16ID:fHDd3cja
多分、最近のプログラムの高級言語なら大概発生するバグです。
ガーベージコレクションとかコンパクションとか色々と対策はあり得ますが、
決定打に欠ける点は否めません。むしろ、プログラマ側が対策を取った方が
効率が良いと思われます。

3デフォルトの名無しさん2022/05/23(月) 09:28:24.72ID:fHDd3cja
プログラムやOSの仕様だと言ってしまえれば楽なんだけどな

4デフォルトの名無しさん2022/05/23(月) 09:30:35.48ID:fHDd3cja
ちなみにPC産業は、メモリーを増やすことで無理矢理乗り切る事を決めてるようです

5デフォルトの名無しさん2022/05/23(月) 09:33:32.48ID:fHDd3cja
マイクロコントローラだとメモリーに限界があるんだよな

6デフォルトの名無しさん2022/05/23(月) 09:35:49.63ID:fHDd3cja
メモリーの小さいPCでExcel使うと、よくこれで落ちるっぽいんだよな

7デフォルトの名無しさん2022/05/23(月) 09:37:45.77ID:fHDd3cja
MacのObject-Cだっけ?言語仕様でどうにかしてるのは

8デフォルトの名無しさん2022/05/23(月) 09:40:21.51ID:fHDd3cja
Mac信者が昔、そこそこ強かったのはその辺りが原因だよな
スマホの普及でなりを潜めたが

9デフォルトの名無しさん2022/05/23(月) 09:42:28.55ID:fHDd3cja
Macでも落ちるときは落ちる
調子に乗ってGUIに動画を使って爆弾マークを殖やした時期があったな

10デフォルトの名無しさん2022/05/23(月) 09:43:51.48ID:fHDd3cja
スマホもPCのノリで調子に乗って遊んでると落ちるよな

11デフォルトの名無しさん2022/05/23(月) 09:46:58.56ID:fHDd3cja
malloc全面禁止が出来れば楽なんだがな
フラグメンテーションが起きようも無くなる
まあ、簡単な話ではないけどな

最初にmallocした領域を最後まで使い続ける手もあるな
途中でreallocを使わなければ、どうって事もない話だ
要は、メモリーに隙間を空けなければ良いだけだしな

同じメモリーを余裕を持って取得し、最後まで使い回す
どのぐらいの余裕が必要かは考えれば出てくると思われる

例えば、TCP/IPのパケットの場合は、64kが最大だから、
このサイズでメモリーを取得して使い回せば良い

取得したメモリー領域をいちいち全部解放する方法もあるよな
これなら隙間の空きようも無い

ただ、メモリーの取得方法や環境によっては、
取得した順番とは真逆に解放する必要があるケースがあり得るから注意する事

12デフォルトの名無しさん2022/05/23(月) 09:47:42.48ID:fHDd3cja
STLも調子に乗って使うと危険な事があるよな

13デフォルトの名無しさん2022/05/23(月) 09:50:30.77ID:fHDd3cja
>取得したメモリー領域をいちいち全部解放する方法もあるよな
>これなら隙間の空きようも無い

これが実は一番のくせ者でな、ライブラリとかの都合で解放しきれないケースがある
で、広大な虫食い現象の発生原因になるとか

14デフォルトの名無しさん2022/05/23(月) 09:56:05.64ID:fHDd3cja
>>13
部分的にちょこっとメモリーを取得するとかが怖いよな
ユーザーにとっては便利なんだろうがプログラマにとっては厄介この上ない処理になる

15デフォルトの名無しさん2022/05/23(月) 09:59:00.65ID:fHDd3cja
プロフィールとか住所録は怖いね
電話番号を複数並べるとかの処理がこうなってる可能性はあり得る

16デフォルトの名無しさん2022/05/23(月) 10:13:43.44ID:fHDd3cja
>>13-15
構造体やクラス構造の基底クラスで部分的なポインタの使用禁止すれば、基本的には何とかなる

17デフォルトの名無しさん2022/05/23(月) 10:16:54.78ID:fHDd3cja
>>16
最近の言語仕様だとこれが防げないんだよな、怖い怖い
ガーベージコレクションが乗ってる言語で言語仕様を知らない人間が作ってるから

18デフォルトの名無しさん2022/05/23(月) 15:58:08.89ID:2I4BsGir
>>11
> 最初にmallocした領域を最後まで使い続ける

これしかないのでは

19デフォルトの名無しさん2022/05/24(火) 00:30:30.13ID:AfIH44Sa
昔と違って、すべてのデータを起動時に読み込んだり、
すべてのデータをリソースに放り込んだりが当たり前なんだよな、今は。
起動時に読み込まないのはセーブデータだけ。ゲームならこれで十分。
時代は変わったな。

20デフォルトの名無しさん2022/05/24(火) 01:11:11.46ID:AfIH44Sa
HDDの一瞬のアクセスで終わるしな
フロッピー時代の人達はどうやってメモリーを管理してたんだ?
少ないメモリーであれだけの事をやっていてよく落ちないよな

21デフォルトの名無しさん2022/05/26(木) 04:37:08.87ID:5/Uhy433
昔はメモリ領域の隅々までメモリマップで管理して、いつどこでどう使うかを決めてたんだよ
毎回コールドスタートで、常駐プログラムも全て素性のしれたものしか動かさないような環境だからこそできたわけだけど

22デフォルトの名無しさん2022/05/27(金) 11:28:28.43ID:S0cy91Tb
CP/M の overlay か

23デフォルトの名無しさん2022/05/27(金) 12:47:22.12ID:tzFUQxnX
質問
今どきのCPUなら仮想記憶があるから、メモリが連続してなくてもいいと思うんだけど、どう?

24デフォルトの名無しさん2022/05/27(金) 17:32:07.10ID:IBVx4FIE
仮想記憶って、ページングで容量増やすだけじゃね?

25デフォルトの名無しさん2022/05/27(金) 17:33:51.89ID:IBVx4FIE
しかも、スワップファイルして容量増やす代わりに速度遅くなるし

26デフォルトの名無しさん2022/05/27(金) 17:40:47.79ID:IBVx4FIE
容量増やしてフラグメンテーションを抑制してるだけの話だな

27デフォルトの名無しさん2022/05/28(土) 13:01:52.10ID:iLlMOWtZ
ノードツリーみたいなデータ型のものを扱うと仕方なさそうな
高層マンションみたいに初めから大量に枠を確保しておいて、空き部屋ができたら使う方式が現実解かな?

28デフォルトの名無しさん2022/05/28(土) 13:13:14.67ID:k/Sv/d4l
forで何回も回すスコープの中の変数ってフラグメンテーションの原因になるの?

例えば
nを1から100まで増やして
対応する番号の数値呼び出して
変数A = f(n)として100回処理した場合
変数Aは1フレームで100回別の場所に書き換えされるの?

29デフォルトの名無しさん2022/05/28(土) 14:17:44.57ID:R0+ouirM
最速でフラグメンテーション起こすプログラムとかある?

30デフォルトの名無しさん2022/05/28(土) 22:19:33.23ID:zgRSxl27
>>28
メモリー使ってればね。っていうかメモリー使わないんでは?

>>29
これなんかどうだ?
vector<vector<int>> vec;

31デフォルトの名無しさん2022/05/28(土) 22:23:46.10ID:zgRSxl27
>>29
あっそっか、大量にメモリの取得解放を別々のモジュールで行えば良いんだ。
で、その間に嫌がらせみたいに小さなメモリー取得をする処理をどっちにも入れる

32デフォルトの名無しさん2022/05/29(日) 12:08:45.89ID:au8Lw3/M
IEやfirefoxやChromeを沢山起動させろ

33デフォルトの名無しさん2022/05/29(日) 13:18:08.42ID:azJHOMIC
それってもうウイルスだね


lud20221121050022
このスレへの固定リンク: http://5chb.net/r/tech/1653264827/
ヒント:5chスレのurlに http://xxxx.5chb.net/xxxx のようにbを入れるだけでここでスレ保存、閲覧できます。

TOPへ TOPへ  

このエントリをはてなブックマークに追加現在登録者数177 ブックマークへ


全掲示板一覧 この掲示板へ 人気スレ | Youtube 動画 >50 >100 >200 >300 >500 >1000枚 新着画像

 ↓「フラグメンテーション対策スレ 」を見た人も見ています:
レガシー技対策スレ
ポケモンSVエースバーン対策スレ
【アセンション】ソーラーフラッシュ対策スレ【グレートリセット】
公務員就職対策スレ
全レスピエロ対策スレ
男の陰部の色素沈殿対策スレ
開示後の損害賠償請求対策スレ
オカルト板ネトウヨ対策スレ
野村アンチ対策スレ
【アンジュルム】荒らし対策スレ
北大志望のセンター対策スレ
【FF14】光の戦士対策スレ
メットライフドーム対策スレ
嫌儲スクリプト対策スレ
ゲームwiki荒らし対策スレ
【乞食】ネスレ&げん玉対策スレ
京子のワキガ対策スレ
【アンチハセカラ】恒心教徒対策スレ
水温上昇対策スレ
【NMB48】選抜総選挙対策スレ
【2020】三重オールナイト対策スレ
【ゴミ専用】第104回 看護師国家試験 対策スレ
ガンダムハラスメント対策スレ
【クマと】熊対策スレ 5頭目【踊ろう】
グムエル対策スレ
税理士試験・コロナウイルス対策スレ
居酒屋客に「感染症対策料」を請求 モンテローザが試験導入も...わずか12日で中止に [ひよこ★]
【ハゲ】毛髪移植の代替ソリューション:トリコピグメンテーションでハゲの汚名払拭
【台風24号】今からできる対策「窓ガラスに養生テープで”バツ印”」「平面アンテナに交換」など
保守やわ銀対策スレ Part.4
【任天堂】 Nintendo Switch プレゼンテーション 2017 次スレ
エグゼのテレビ電話対策スレ
花火対策スレ
おやき対策スレ
リレーアタック対策を考えるスレ
【下翼】なうちゃん対策スレ 2
NMB48本スレ対策室★12
政府、能登大震災でのラサールや朝日・東京新聞のようなディスインフォメーション工作に対策へ
【東京五輪】競技団体、組織委員会の暑さ対策にダメ出し…「水とお茶では悪循環。ボランティアにスポーツドリンクを」 場が静まり返る
バカセ対策スレ
NIP河童対策スレ本部
重複スレ対策について
官庁訪問対策スレ
ADHD対策サプリメント総合スレ11
【クマと】熊対策スレ 15頭目【踊ろう】
なんJキュレーションサイト・アフィカス対策本部
【悪質】羽生アンチ対策スレッド
STU48の7ならべ 厄介対策・報告スレ★6
スクリプト対策会議スレ
保守荒らし自なし対策議論スレ
【伝説レイド】エンテイ&ライコウ対策を再び考える
日本の警察「SNSでの闇バイト募集投稿は ボランティアに検索・監視させる」新対策を開始 ⇐ 😨
NMB48本スレ対策室★10
【ゲーム】ニンテンドースイッチ2国内専用モデルで海外への転売対策! 国内も抽選応募条件に50時間プレイ実績必須 ★2 [Ikhtiandr★]
脅威対策スレ−Vol3
【東京五輪】暑さ対策、全容判明…ボランティアにはアイスクリーム 氷1300トンで選手冷やす 関係者「これで十分なのか...」
荒らし対策案を考えるスレ
ニートの面接対策スレ
そもそも民泊はバカが建てた空っぽのマンション対策
東京工業大学対策スレ
ヒキ板対策スレ
歴戦王アンイシュワルダ対策スレ
西村のドメイン強奪対策スレ 3
幻のポケモン『ミュウ』対策スレ
嫌味説教マネコピペヒキ雑対策スレ
21:39:32 up 24 days, 13:01, 0 users, load average: 98.77, 113.90, 135.88

in 0.0038948059082031 sec @[email protected] on 111611