View a markdown version of this page

AWS Librerie Common Runtime (CRT) - AWS SDK e strumenti

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

AWS Librerie Common Runtime (CRT)

Le librerie AWS Common Runtime (CRT) sono una libreria di base degli SDK. Il CRT è una famiglia modulare di pacchetti indipendenti, scritta in C. Ogni pacchetto offre buone prestazioni e un ingombro minimo per le diverse funzionalità richieste. Queste funzionalità sono comuni e condivise tra tutti gli SDK e offrono un migliore riutilizzo, ottimizzazione e precisione del codice. I pacchetti sono:

  • awslabs/aws-c-auth: autenticazione AWS lato client (provider di credenziali standard e firma (sigv4))

  • awslabs/aws-c-cal: tipi primitivi crittografici, hash (MD5, SHA256, SHA256 HMAC), firmatari, AES

  • awslabs/aws-c-common: Strutture dati di base, tipi primitivi, gestione del buffer, funzioni relative a stdlib threading/synchronization

  • awslabs/aws-c-compression: Algoritmi di compressione (Huffman) encoding/decoding

  • awslabs/aws-c-event-stream: elaborazione dei messaggi del flusso di eventi (intestazioni, preludio, payload), implementazione di chiamate di procedura remota (RPC crc/trailer) su flussi di eventi

  • awslabs/aws-c-http: implementazione in C99 delle specifiche e HTTP/1.1 HTTP/2

  • awslabs/aws-c-io: Socket (TCP, UDP), DNS, pipe, loop di eventi, canali, SSL/TLS

  • awslabs/aws-c-iot: implementazione C99 dell'integrazione dei servizi cloud AWS IoT con i dispositivi

  • awslabs/aws-c-mqtt: Protocollo di messaggistica standard e leggero per l'Internet of Things (IoT)

  • awslabs/aws-c-s3: implementazione della libreria C99 per la comunicazione con il servizio Amazon S3, progettata per massimizzare il throughput su istanze Amazon EC2 a larghezza di banda elevata

  • awslabs/aws-c-sdkutils: Una libreria di utilità per l'analisi e la gestione dei profili AWS

  • awslabs/aws-checksums: CRC32c e CRC32 Cross-platform con accelerazione hardware con ricorso a implementazioni software efficienti

  • awslabs/aws-lc: libreria General-purpose crittografica gestita dal team di AWS Cryptography per AWS e dai suoi clienti, basata sul codice del progetto Google BoringSSL e del progetto OpenSSL

  • awslabs/s2n: Implementazione C99 dei TLS/SSL protocolli, progettata per essere piccola e veloce con la sicurezza come priorità

Il CRT è disponibile tramite tutti gli SDK tranne Go e Rust.

Dipendenze CRT

Le librerie CRT formano una rete complessa di relazioni e dipendenze. Conoscere queste relazioni è utile se è necessario creare il CRT direttamente dal codice sorgente. Tuttavia, la maggior parte degli utenti accede alla funzionalità CRT tramite l'SDK del linguaggio (come AWS SDK per C++ o SDK AWS per Java) o l'SDK del dispositivo IoT del linguaggio (come IoT SDK per C++ o IoT SDK AWS per Java). AWS Nel diagramma seguente, la casella Language CRT Bindings si riferisce al pacchetto che include le librerie CRT per un SDK linguistico specifico. Questa è una raccolta di pacchetti del moduloaws-crt-*, dove '*' è un linguaggio SDK (come o). aws-crt-cppaws-crt-java

Di seguito è riportata un'illustrazione delle dipendenze gerarchiche delle librerie CRT.

Diagramma delle dipendenze CRT che mostra come le singole librerie CRT interagiscono tra loro.