Back to Course
2/8
Complete20 XP
reading8 min

Solana Architecture

Solana's Architecture

Solana's architecture is designed around 8 key innovations that work together to achieve unprecedented throughput.

The Runtime

The Solana runtime (called Sealevel) is the parallel smart contract execution engine. Unlike Ethereum's sequential EVM, Sealevel can process thousands of smart contracts in parallel.

┌─────────────────────────────────────────┐

│ Solana Runtime (Sealevel) │

├─────────────────────────────────────────┤

│ ┌─────┐ ┌─────┐ ┌─────┐ ┌─────┐ │

│ │ TX1 │ │ TX2 │ │ TX3 │ │ TX4 │ │

│ └──┬──┘ └──┬──┘ └──┬──┘ └──┬──┘ │

│ │ │ │ │ │

│ ┌──▼──┐ ┌──▼──┐ ┌──▼──┐ ┌──▼──┐ │

│ │Prog1│ │Prog2│ │Prog1│ │Prog3│ │

│ └─────┘ └─────┘ └─────┘ └─────┘ │

│ ▲ Parallel Execution ▲ │

└─────────────────────────────────────────┘

Account Model

Everything in Solana is an account. Programs are accounts, data is stored in accounts, even your wallet is an account.

interface Account {

lamports: number; // Balance in lamports (1 SOL = 1B lamports)

data: Uint8Array; // Arbitrary data

owner: PublicKey; // Program that owns this account

executable: boolean; // Is this a program?

rentEpoch: number; // Rent tracking

}

Key Concepts

ConceptDescription
ProgramsOn-chain code (like smart contracts)
AccountsStore state and SOL
InstructionsCalls to programs with accounts
TransactionsBundles of 1+ instructions
SignaturesEd25519 cryptographic signatures

Unlike Ethereum, Solana programs are stateless. All state is stored in separate accounts that programs read and write to.

Programs vs Smart Contracts

On Solana, we call them programs, not smart contracts. Key differences:

  • Programs are stateless — they don't store data internally
  • Programs are upgradeable by default (can be made immutable)
  • Programs specify which accounts they need upfront (enables parallel execution)
  • Programs are written in Rust (or C/C++) and compiled to BPF bytecode
  • Hints

    0/2 revealed
    🔒 Hint 2 — reveal previous hints first