malloc
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/05/26 21:31 UTC 版)
malloc(マロック, エムアロック)、calloc、reallocは、動的メモリ確保を行うC言語の標準ライブラリの関数である[1][2][3]。確保したメモリの解放にはfree関数を使用する。
注釈
- ^ Unix系の
alloca()
[4][5]、Microsoft Visual C++ (MSVC) におけるCランタイムライブラリの_alloca()
[6]など。MSVCには閾値に応じてスタックとヒープを自動で切り替える_malloca()
[7]もあり、こちらは使い終わった後に_freea()
を呼び出す必要がある。 - ^ ftp://g.oswego.edu/pub/misc/malloc.c の
DEFAULT_MMAP_THRESHOLD
を参照。 - ^ Linuxでは4KBや8KBが一般的[19]。Microsoft Windowsでは通常4KB[20]。CPUのアーキテクチャにも依存する。
- ^ ISO/IEC 9899:1999の「7.17 Common definitions <stddef.h>」を参照のこと。
- ^ ISO/IEC 9899:1999の「7.18.3 Limits of other integer types」を参照のこと。
出典
- ^ a b ISO/IEC 9899:1999 specification. p. 313, § 7.20.3 "Memory management functions"
- ^ Godse, Atul P.; Godse, Deepali A. (2008). Advanced C Programming. p. 6-28: Technical Publications. pp. 400. ISBN 978-81-8431-496-0
- ^ Summit, Steve. “C Programming Notes - Chapter 11: Memory Allocation”. 2011年10月30日閲覧。
- ^ “alloca”. Man.freebsd.org (2006年9月5日). 2011年9月18日閲覧。
- ^ alloca(3) - Linux manual page
- ^ _alloca | Microsoft Learn
- ^ “_malloca”. Microsoft Docs. Microsoft. 2019年2月18日閲覧。
- ^ “gcc manual”. gnu.org. 2008年12月14日閲覧。
- ^ a b “Casting malloc”. Cprogramming.com. 2007年3月9日閲覧。
- ^ C FAQ 日本語訳 7.7
- ^ C FAQ 日本語訳 7.6
- ^ “comp.lang.c FAQ list · Question 7.7b”. C-FAQ. 2007年3月9日閲覧。
- ^ malloc - cppreference.com (英語版)
- ^ malloc - cppreference.com (日本語版)
- ^ std::malloc - cppreference.com (英語版)
- ^ std::malloc - cppreference.com (日本語版)
- ^ Doug Lea. “A Memory Allocator”. 2024年5月25日閲覧。
- ^ a b c Kaempf, Michel (2001). “Vudo malloc tricks”. Phrack (57): 8 2012年2月2日閲覧。.
- ^ メモリ管理 | 情報科学類 オペレーティングシステム II | 筑波大学 システム情報系
- ^ Sanderson, Bruce (2004年12月12日). “RAM, Virtual Memory, Pagefile and all that stuff”. Microsoft Help and Support. Microsoft. 2010年6月16日時点のオリジナルよりアーカイブ。2012年7月11日閲覧。
- ^ Evans, Jason (2006年4月16日). “A Scalable Concurrent malloc(3) Implementation for FreeBSD”. 2012年3月18日閲覧。
- ^ Berger, Emery D. (2000年). “Hoard: A Scalable Memory Allocator for Multithreaded Applications”. 2012年3月18日閲覧。
- ^ TCMalloc : Thread-Caching Malloc
- ^ Ghemawat, Sanjay; Menage, Paul; TCMalloc : Thread-Caching Malloc
- ^ Callaghan, Mark (2009年1月18日). “High Availability MySQL: Double sysbench throughput with TCMalloc”. Mysqlha.blogspot.com. 2011年9月18日閲覧。
- ^ “kmalloc()/kfree() include/linux/slab.h”. People.netfilter.org. 2011年9月18日閲覧。
- ^ mallocが成功したからといってメモリが使えるとは限らない | makiuchi-d.github.io
- ^ OOM Killer | 日経クロステック(xTECH)
- ^ _HEAP_MAXREQ | Microsoft Learn
- ^ malloc | Microsoft Learn
- ^ Stroustrup, Bjarne (2008). Programming: Principles and Practice Using C++. 1009, §27.4 Free store: Addison Wesley. pp. 1236. ISBN 978-0-321-54372-1
- 1 mallocとは
- 2 mallocの概要
- 3 使用例
- 4 最大確保サイズ
- 5 C++での利用
固有名詞の分類
- Mallocのページへのリンク