

# Lambda の OS 専用ランタイムを使用する状況
<a name="runtimes-provided"></a>

Lambda は Java、Python、Node.js、.NET、Ruby の[マネージドランタイム](lambda-runtimes.md)を提供しています。マネージドランタイムとして使用できないプログラミング言語で Lambda 関数を作成するには、OS 専用ランタイム (`provided` ランタイムファミリー) を使用します。OS 専用ランタイムの主な使用例は次の 3 つです。
+ **ネイティブアヘッドオブタイム (AOT) コンパイル**: Go、Rust、Swift、C\+\+ などの言語は、実行可能なバイナリにネイティブにコンパイルされるため、専用の言語ランタイムは必要ありません。これらの言語に必要なのは、コンパイルされたバイナリを実行できる OS 環境だけです。Lambda OS 専用ランタイムを使用して、.NET ネイティブ AOT と Java GraalVM Native Image でコンパイルされたバイナリをデプロイすることもできます。

  バイナリには、ランタイムインターフェイスクライアントを含める必要があります。ランタイムインターフェイスクライアントは [カスタムランタイムに Lambda ランタイム API を使用する](runtimes-api.md) を呼び出して関数呼び出しを取得し、次に関数ハンドラーを呼び出します。Lambda は [Rust](lambda-rust.md)、[Go](golang-package.md#golang-package-mac-linux)、[.NET Native AOT](dotnet-native-aot.md)、[Swift](https://github.com/awslabs/swift-aws-lambda-runtime) (実験用)、[C\+\+](https://github.com/awslabs/aws-lambda-cpp) (実験用) のランタイムインターフェイスクライアントを提供しています。

  バイナリは Linux 環境用に、関数に使用する予定のものと同じ命令セットアーキテクチャ (x86\_64 または arm64) でコンパイルする必要があります。
+ **サードパーティランタイム**: PHP 用の [Bref](https://bref.sh/docs/news/01-bref-1.0.html#amazon-linux-2) などの既製のランタイムを使用して Lambda 関数を実行できます。
+ **カスタムランタイム**: Lambda がマネージドランタイムを提供していない言語または言語バージョン (Node.js 19 など) 用に独自のランタイムを構築できます。詳細については、「[AWS Lambda 用カスタムランタイムの構築](runtimes-custom.md)」を参照してください。これは OS 専用ランタイムでは最も稀なユースケースです。

Lambda は以下の OS 専用 ランタイムをサポートします。


| 名前 | 識別子 | オペレーティングシステム | 廃止日 | 関数の作成をブロックする | 関数の更新をブロックする | 
| --- | --- | --- | --- | --- | --- | 
| OS 専用ランタイム | `provided.al2023` | Amazon Linux 2023 |  2029 年 6 月 30 日  |  2029 年 7 月 31 日  |  2029 年 8 月 31 日  | 
| OS 専用ランタイム | `provided.al2` | Amazon Linux 2 |  2026 年 7 月 31 日  |  2026 年 8 月 31 日  |  Sep 30, 2026  | 

Amazon Linux 2023 (`provided.al2023`) ランタイムには、デプロイのフットプリントが小さいことや、`glibc` などのライブラリのバージョンが更新されていることなど、Amazon Linux 2 に比べていくつかの利点があります。

`provided.al2023` ランタイムは、Amazon Linux 2 のデフォルトのパッケージマネージャーである `yum` ではなく、`dnf` をパッケージマネージャーとして使用します。`provided.al2023` と `provided.al2` の違いの詳細については、AWS コンピューティングブログの「[Introducing the Amazon Linux 2023 runtime for AWS Lambda](https://aws.amazon.com/blogs/compute/introducing-the-amazon-linux-2023-runtime-for-aws-lambda/)」を参照してください。