# Go Avanzato (Go) > Interni del compilatore, runtime, scheduler, cgo, package unsafe, assembly, build tag - 20 domande da colloquio - Senior - [Domande da colloquio: Go](https://sharpskill.dev/it/technologies/go/domande-colloquio.md) ## 1. Quale strumento della toolchain di Go permette di ispezionare il codice assembly generato dal compilatore? **Risposta** Il comando go tool compile -S mostra il codice assembly generato dal compilatore Go. Questo strumento è essenziale per comprendere le ottimizzazioni del compilatore e analizzare codice critico per le prestazioni. È anche possibile usare go build -gcflags=-S per ottenere lo stesso risultato durante una compilazione standard. ## 2. Qual è lo scopo principale del package unsafe in Go? **Risposta** Il package unsafe permette di aggirare il sistema dei tipi di Go per eseguire operazioni di memoria a basso livello. Espone funzioni come Pointer, Sizeof, Alignof e Offsetof che consentono di manipolare direttamente gli indirizzi di memoria. Il suo utilizzo è sconsigliato tranne in casi specifici come l'interoperabilità con codice C o ottimizzazioni critiche. ## 3. Come organizza lo scheduler di Go (GPM) l'esecuzione delle goroutine? **Risposta** Lo scheduler di Go usa il modello GPM: G rappresenta le goroutine, P i processori logici (GOMAXPROCS) e M i thread di sistema. Ogni P ha una run queue locale di goroutine. Quando un M è bloccato su una syscall, il P può essere scollegato e associato a un altro M per continuare l'esecuzione delle goroutine. Questo design consente uno scheduling efficiente con un minimo di context switch. ## Altre 17 domande disponibili - Cos'è cgo e in quale contesto dovrebbe essere usato? - Quale direttiva permette di compilare condizionalmente il codice in base all'OS o all'architettura di destinazione? Registrati gratis: https://sharpskill.dev/it/login ## Altri argomenti di colloquio Go - [Fondamenti di Go](https://sharpskill.dev/it/technologies/go/domande-colloquio/go-basics.md): 25 domande, Junior - [Strutture dati in Go](https://sharpskill.dev/it/technologies/go/domande-colloquio/go-data-structures.md): 20 domande, Junior - [Interfacce in Go](https://sharpskill.dev/it/technologies/go/domande-colloquio/go-interfaces.md): 18 domande, Junior - [Gestione degli errori](https://sharpskill.dev/it/technologies/go/domande-colloquio/error-handling.md): 20 domande, Junior - [Goroutine di base](https://sharpskill.dev/it/technologies/go/domande-colloquio/goroutines-basics.md): 20 domande, Junior - [Channels](https://sharpskill.dev/it/technologies/go/domande-colloquio/channels.md): 22 domande, Junior - [Go Modules](https://sharpskill.dev/it/technologies/go/domande-colloquio/go-modules.md): 18 domande, Mid-Level - [Server HTTP](https://sharpskill.dev/it/technologies/go/domande-colloquio/http-server.md): 24 domande, Mid-Level - [Client HTTP](https://sharpskill.dev/it/technologies/go/domande-colloquio/http-client.md): 18 domande, Mid-Level - [Codifica JSON](https://sharpskill.dev/it/technologies/go/domande-colloquio/json-encoding.md): 20 domande, Mid-Level - [Database/SQL](https://sharpskill.dev/it/technologies/go/domande-colloquio/database-sql.md): 22 domande, Mid-Level - [Pacchetto context](https://sharpskill.dev/it/technologies/go/domande-colloquio/context-package.md): 20 domande, Mid-Level - [Testing](https://sharpskill.dev/it/technologies/go/domande-colloquio/testing.md): 22 domande, Mid-Level - [Pattern di concorrenza](https://sharpskill.dev/it/technologies/go/domande-colloquio/concurrency-patterns.md): 24 domande, Mid-Level - [Primitive di sincronizzazione](https://sharpskill.dev/it/technologies/go/domande-colloquio/sync-primitives.md): 22 domande, Mid-Level - [Framework web Go](https://sharpskill.dev/it/technologies/go/domande-colloquio/go-web-frameworks.md): 20 domande, Mid-Level - [Progettazione di API REST](https://sharpskill.dev/it/technologies/go/domande-colloquio/rest-api-design.md): 20 domande, Mid-Level - [gRPC](https://sharpskill.dev/it/technologies/go/domande-colloquio/grpc.md): 22 domande, Mid-Level - [Reflection](https://sharpskill.dev/it/technologies/go/domande-colloquio/reflection.md): 20 domande, Senior - [Gestione della memoria](https://sharpskill.dev/it/technologies/go/domande-colloquio/memory-management.md): 24 domande, Senior - [Ottimizzazione delle prestazioni](https://sharpskill.dev/it/technologies/go/domande-colloquio/performance-optimization.md): 22 domande, Senior - [Generics](https://sharpskill.dev/it/technologies/go/domande-colloquio/generics.md): 20 domande, Senior - [Go Design Patterns](https://sharpskill.dev/it/technologies/go/domande-colloquio/design-patterns.md): 24 domande, Senior - [Microservices](https://sharpskill.dev/it/technologies/go/domande-colloquio/microservices.md): 24 domande, Senior - [Sicurezza e autenticazione](https://sharpskill.dev/it/technologies/go/domande-colloquio/security-authentication.md): 24 domande, Senior - [Docker & Containerization](https://sharpskill.dev/it/technologies/go/domande-colloquio/docker-containerization.md): 20 domande, Senior - [Kubernetes Basics](https://sharpskill.dev/it/technologies/go/domande-colloquio/kubernetes-basics.md): 22 domande, Senior - [Sviluppo CLI](https://sharpskill.dev/it/technologies/go/domande-colloquio/cli-development.md): 20 domande, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/it/technologies/go/domande-colloquio/advanced-go