AWS 共通ランタイム (CRT) ライブラリ - AWS SDKs および ツール

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS 共通ランタイム (CRT) ライブラリ

AWS Common Runtime (CRT) ライブラリは、 のベースライブラリですSDKs。CRT は、C で記述された独立したパッケージのモジュールファミリーです。各パッケージは、さまざまな必要な機能に対して優れたパフォーマンスと最小限のフットプリントを提供します。これらの機能は共通であり、すべての で共有されるため、コードSDKsの再利用、最適化、精度が向上します。パッケージは以下のとおりです。

  • awslabs/aws-c-auth: AWS クライアント側の認証 (標準認証情報プロバイダーと署名 (sigv4))

  • awslabs/aws-c-cal: 暗号化プリミティブタイプ、ハッシュ (MD5、SHA256、SHA256HMAC)、署名者、 AES

  • awslabs/aws-c-common:基本データ構造、スレッド/同期プリミティブ型、バッファ管理、stdlib 関連関数

  • awslabs/aws-c-compression:圧縮アルゴリズム(ハフマンエンコーディング/デコーディング)

  • awslabs/aws-c-event-stream: イベントストリームメッセージ処理 (ヘッダー、プレリュード、ペイロード、crc/trailer)、イベントストリームを介したリモートプロシージャコール (RPC) の実装

  • awslabs/aws-c-http: HTTP/1.1 および HTTP/2 仕様の C99 実装

  • awslabs/aws-c-io: ソケット (TCP、UDP)DNS、、パイプ、イベントループ、チャネル、SSL/TLS

  • awslabs/aws-c-iot: AWS IoT クラウドサービスとデバイスの統合の C99 実装

  • awslabs/aws-c-mqtt:モノのインターネット (IoT) 向けの標準の軽量メッセージングプロトコル

  • awslabs/aws-c-s3: 高帯域幅の Amazon インスタンスのスループットを最大化するように設計された Amazon S3 サービスと通信するための C99 ライブラリの実装 EC2

  • awslabs/aws-c-sdkutils: AWS プロファイルを解析および管理するためのユーティリティライブラリ

  • awslabs/aws-checksums: クロスプラットフォームCRC32のハードウェアアクセラレーションCRC32cと効率的なソフトウェア実装へのフォールバック

  • awslabs/aws-lc: Google BoringSSL プロジェクトと OpenSSL プロジェクトのコードに基づいて、 AWS Cryptography チームが AWS とその顧客のために管理する汎用暗号化ライブラリ

  • awslabs/s2n: TLS/SSL プロトコルの C99 実装。セキュリティを優先して、小さく高速に設計

CRT は Go と Rust SDKsを除くすべての から使用できます。

CRT 依存関係

CRT ライブラリは、関係と依存関係の複雑な網を形成します。これらの関係を知ることは、ソースCRTから直接 を構築する必要がある場合に役立ちます。ただし、ほとんどのユーザーは、言語 SDK (C++ や AWS SDK Java の場合など AWS SDK) または言語 IoT デバイス SDK (C++ や AWS IoT Java SDK用の AWS IoT など) SDK を介してCRT機能にアクセスします。次の図では、言語CRTバインディングボックスは、特定の言語 のCRTライブラリをラップするパッケージを指しますSDK。これは 形式のパッケージのコレクションでaws-crt-*、「*」はSDK言語 ( aws-crt-cppや など) ですaws-crt-java

ライブラリの階層依存関係を次に示しますCRT。

CRT 個々のCRTライブラリの相互関係を示す依存関係図。