mallocが確保できるメモリブロックの最大サイズはシステムに依存する。特に物理メモリ量とOSの実装に依存する。理論上の最大値はsize_t型（メモリ領域のサイズを表す符号なし整数）である。その最大値は 2 − 1か、C99標準の定数SIZE_MAXである。C言語標準は一回の確保で保証される最小値を提示している（C89では0x7FFF、C99では0xFFFF）。
OSのカーネルでもアプリケーションと同様にメモリ確保が必要である。カーネル内にもmalloc相当の関数はあるが、その実装はCライブラリのものとは大きく異なる。例えば、DMA用のバッファには特別な制限が課せられることがあるし、割り込み処理でメモリを動的に確保したい場合もある。このため、カーネルの仮想記憶サブシステムと密に連携した malloc 実装が要求される。
スレッド毎に小さいメモリ確保のための領域を設ける。大きなメモリ確保にはmmapかsbrkを使用する。TCMallocはGoogleが開発したもので、スレッドが終了した際にローカルな領域を掃除するガベージコレクション機能を備えている。マルチスレッド環境では、glibcのptmallocの2倍以上の性能を発揮するという。
Hoardメモリアロケータは、スケーラブルなメモリ確保性能を目指したアロケータである。OpenBSDのアロケータと同様、Hoard はmmapのみを使用するが、64キロバイトのスーパーブロックと呼ばれる塊ごとにメモリを管理する。Hoardのヒープは論理的にグローバルな1つのヒープとプロセッサ毎のヒープに分けられている。さらにスレッド毎のキャッシュを持ち、制限された数のスーパーブロックを保持できる。確保はスレッド毎またはプロセッサ毎のヒープからのみ行い、解放されたスーパーブロックの多くはグローバルなヒープに戻して他のプロセッサが使えるようにする。このようにしてHoardではスレッド数に対してほぼ比例したスケーラビリティを維持しつつ、フラグメンテーションを最小に抑えている。
OpenBSDのmalloc関数の実装はmmapを使用している。ページサイズ以上の要求はmmapで行われ、ページサイズ未満ならmalloc内で管理しているメモリプールから割り当てる。そのメモリプールもmmapで確保したものである。freeを実行すると、munmapを使ってプロセスのアドレス空間からアンマップされて解放される。このシステムはアドレス空間のレイアウトをランダム化することによってセキュリティを高めるための設計でもあり、OpenBSDのmmapが持つギャップページ機能も利用している（mmapで確保した領域が仮想空間上で隣接しないようにする機能）。また、解放後の領域は仮想空間としてマッピングが存在しないため、解放後のアクセスの検出も容易である（普通ならセグメンテーション違反が発生してプログラムが終了する）。
FreeBSD 7.0以降と NetBSD 5.0以降では、古い実装 (phkmalloc) をJason Evansが開発したjemallocに置換した。phkmalloc はマルチスレッド環境でのスケーラビリティに問題があった。ロックの衝突を防ぐため、jemallocはCPU毎に分離した "arena" と呼ばれる領域を用意する。実験によれば、スレッド数に比例して1秒間のmalloc回数が増えていくとき、phkmallocとdlmallocではスレッド数に反比例した性能を示した。
IA-32アーキテクチャでのアロケータの実装には一般にヒープまたはデータセグメントが使用されている（セグメント方式）。アロケータがメモリを確保するとき、ヒープに未使用領域がない場合はヒープを拡張することでメモリを確保する。ヒープ方式はフラグメンテーションという問題がある。どのようなメモリ確保方式でもヒープではフラグメントが発生する。つまり、ヒープ上に飛び飛びに使用中領域と未使用領域が存在することになる。優秀なアロケータはヒープを拡張する前に未使用領域を再利用しようとする。しかし性能問題があるため、リアルタイムシステムでは代わりに「メモリプール」という方式を使う必要がある（特定サイズのメモリブロックのプールを予め用意しておく方式）。ヒープ方式の欠点は、先頭位置が変更できないため、ヒープの最後の位置に使用中ブロックがある限り、ヒープを縮小することができないことである。従って、このような時は実際に使用しているメモリが少ないのにも関わらず、ヒープのアドレス空間に占める領域が拡大し続けるという問題が生じる。mmapで確保した領域は、縮小したり開放したりすることができる。これらによって開放された領域は、OSのメモリ管理システムに委ねることになる。
メモリ管理の実装はオペレーティングシステム (OS) と（ハードウェア）アーキテクチャに大きく依存する。OSによってはmallocのためのアロケータを提供しているし、データ領域の制御関数を提供している場合もある。同じ動的メモリアロケータでmallocだけでなくC++の operator new も実装していることが多い。そこでこれを malloc ではなく「アロケータ」と呼ぶ。
リーグ戦の終了後に上位リーグの最下位校と下位リーグの優勝校との間の1カードのみで対戦を組み、勝利チームを次シーズンの1部リーグの所属とする（敗北チームは次シーズンは2部リーグ所属となる）。対戦方法は2戦先勝方式。2014年春季から2015年春季まではリーグ戦の終了後に1部リーグの最下位校と2部リーグの優勝校との間、及び1部リーグの7位校と2部リーグの2位校との間の2カードで対戦を組み、勝利チームを次シーズンの1部リーグの所属としていた（敗北チームは次シーズンは2部リーグ所属となった）。対戦方法は2戦先勝方式。2015年秋季は次年度より1部が6校になるため特殊な入替戦を行った。まずは、1部リーグの最下位校対2部リーグの優勝校、1部リーグの7位校対2部リーグの2位校で1回戦を行う。次に、1回戦の勝利チーム同士で2回戦を行う。そして2回戦の勝利チームが1部6位チームとの決勝戦を行い、決勝戦の勝利チームが次シーズンの1部リーグ所属チームに、残りの4チームは次シーズンは2部リーグ所属となった。対戦方法は1回戦・2回戦はトーナメント方式、決勝戦が2戦先勝方式。