Skip to content

Latest commit

ย 

History

History
209 lines (190 loc) ยท 5.92 KB

index.md

File metadata and controls

209 lines (190 loc) ยท 5.92 KB

้™„ๅฝ•A๏ผšๆบ็ ๆ–‡ไปถๅˆ†้…็ดขๅผ•

ไธ‹้ขๅˆ—ๅ‡บไบ† Go ๆบ็ ๆ–‡ไปถๆ‰€ๅฎž็Žฐ็š„ๅŠŸ่ƒฝ๏ผŒไปฅๅŠไป–ไปฌไธป่ฆๅŠŸ่ƒฝ็š„ไป‹็ป๏ผŒๅœจๆœฌไนฆๆญฃๆ–‡ไธญๅฏนๅบ”็š„๏ผˆ็ฒ—็•ฅ๏ผ‰ไฝ็ฝฎ๏ผš

    โ”œโ”€โ”€ cmd
    โ”‚ย ย  โ””โ”€โ”€ cgo
    โ”œโ”€โ”€ net
    โ”œโ”€โ”€ reflect
    โ”œโ”€โ”€ os/signal
    โ”œโ”€โ”€ runtime
    โ”‚ย ย  โ”œโ”€โ”€ README.md

    // boot
    โ”‚ย ย  โ”œโ”€โ”€ rt0_darwin_amd64.s
    โ”‚ย ย  โ”œโ”€โ”€ rt0_js_wasm.s
    โ”‚ย ย  โ”œโ”€โ”€ rt0_linux_amd64.s
    โ”‚ย ย  โ”œโ”€โ”€ runtime1.go
    โ”‚ย ย  โ”œโ”€โ”€ os_darwin.go 
    โ”‚ย ย  โ”œโ”€โ”€ os_linux.go
    โ”‚ย ย  โ”œโ”€โ”€ go_tls.h

    // sched
    โ”‚ย ย  โ”œโ”€โ”€ runtime.go
    โ”‚ย ย  โ”œโ”€โ”€ runtime2.go
    โ”‚ย ย  โ”œโ”€โ”€ proc.go
    โ”‚ย ย  โ”œโ”€โ”€ stack.go
    // signal
    โ”‚ย ย  โ”œโ”€โ”€ os_linux_generic.go
    โ”‚ย ย  โ”œโ”€โ”€ sigaction.go
    โ”‚ย ย  โ”œโ”€โ”€ signal_amd64x.go
    โ”‚ย ย  โ”œโ”€โ”€ signal_darwin.go
    โ”‚ย ย  โ”œโ”€โ”€ signal_darwin_amd64.go
    โ”‚ย ย  โ”œโ”€โ”€ signal_linux_amd64.go
    โ”‚ย ย  โ”œโ”€โ”€ signal_unix.go
    โ”‚ย ย  โ”œโ”€โ”€ sigqueue.go
    โ”‚ย ย  โ”œโ”€โ”€ sigtab_linux_generic.go

    // mem
    โ”‚ย ย  โ”œโ”€โ”€ malloc.go
    โ”‚ย ย  โ”œโ”€โ”€ mcache.go
    โ”‚ย ย  โ”œโ”€โ”€ mcentral.go
    โ”‚ย ย  โ”œโ”€โ”€ mprof.go
    โ”‚ย ย  โ”œโ”€โ”€ mfixalloc.go
    โ”‚ย ย  โ”œโ”€โ”€ mheap.go
    โ”‚ย ย  โ”œโ”€โ”€ mmap.go
    โ”‚ย ย  โ”œโ”€โ”€ msize.go
    โ”‚ย ย  โ”œโ”€โ”€ mstats.go
    โ”‚ย ย  โ”œโ”€โ”€ mkduff.go
    โ”‚ย ย  โ”œโ”€โ”€ duff_amd64.s
    โ”‚ย ย  โ”œโ”€โ”€ mksizeclasses.go
    โ”‚ย ย  โ”œโ”€โ”€ sizeclasses.go
    โ”‚ย ย  โ”œโ”€โ”€ mem_darwin.go
    โ”‚ย ย  โ”œโ”€โ”€ mem_js.go
    โ”‚ย ย  โ”œโ”€โ”€ mem_linux.go
    โ”‚ย ย  โ”œโ”€โ”€ memclr_amd64.s
    โ”‚ย ย  โ”œโ”€โ”€ memclr_wasm.s
    โ”‚ย ย  โ”œโ”€โ”€ memmove_amd64.s
    โ”‚ย ย  โ”œโ”€โ”€ memmove_wasm.s

    // GC
    โ”‚ย ย  โ”œโ”€โ”€ mgc.go
    โ”‚ย ย  โ”œโ”€โ”€ mgclarge.go
    โ”‚ย ย  โ”œโ”€โ”€ mgcmark.go
    โ”‚ย ย  โ”œโ”€โ”€ mgcsweep.go
    โ”‚ย ย  โ”œโ”€โ”€ mgcsweepbuf.go
    โ”‚ย ย  โ”œโ”€โ”€ mgcwork.go
    โ”‚ย ย  โ”œโ”€โ”€ mbarrier.go
    โ”‚ย ย  โ”œโ”€โ”€ mwbbuf.go
    โ”‚ย ย  โ”œโ”€โ”€ mbitmap.go
    โ”‚ย ย  โ”œโ”€โ”€ lfstack.go
    โ”‚ย ย  โ”œโ”€โ”€ lfstack_64bit.go
    โ”‚ย ย  โ”œโ”€โ”€ mfinal.go

    // common
    โ”‚ย ย  โ”œโ”€โ”€ asm.s
    โ”‚ย ย  โ”œโ”€โ”€ asm_amd64.s
    โ”‚ย ย  โ”œโ”€โ”€ asm_wasm.s

    // types/keywords
    โ”‚ย ย  โ”œโ”€โ”€ type.go
    โ”‚ย ย  โ”œโ”€โ”€ typekind.go
    //   float
    โ”‚ย ย  โ”œโ”€โ”€ softfloat64.go
    โ”‚ย ย  โ”œโ”€โ”€ float.go
    //   map
    โ”‚ย ย  โ”œโ”€โ”€ fastlog2.go
    โ”‚ย ย  โ”œโ”€โ”€ mkfastlog2table.go
    โ”‚ย ย  โ”œโ”€โ”€ fastlog2table.go
    โ”‚ย ย  โ”œโ”€โ”€ alg.go
    โ”‚ย ย  โ”œโ”€โ”€ map.go
    โ”‚ย ย  โ”œโ”€โ”€ map_fast32.go
    โ”‚ย ย  โ”œโ”€โ”€ map_fast64.go
    โ”‚ย ย  โ”œโ”€โ”€ map_faststr.go
    โ”‚ย ย  โ”œโ”€โ”€ hash64.go
    โ”‚ย ย  โ”œโ”€โ”€ heapdump.go
    //   interface
    โ”‚ย ย  โ”œโ”€โ”€ iface.go
    //   chan/select
    โ”‚ย ย  โ”œโ”€โ”€ chan.go
    โ”‚ย ย  โ”œโ”€โ”€ select.go
    //   slice
    โ”‚ย ย  โ”œโ”€โ”€ slice.go
    //   string
    โ”‚ย ย  โ”œโ”€โ”€ string.go
    โ”‚ย ย  โ”œโ”€โ”€ utf8.go
    //   panic
    โ”‚ย ย  โ”œโ”€โ”€ panic.go

    // locks
    โ”‚ย ย  โ”œโ”€โ”€ sema.go
    โ”‚ย ย  โ”œโ”€โ”€ lock_futex.go
    โ”‚ย ย  โ”œโ”€โ”€ lock_js.go
    โ”‚ย ย  โ”œโ”€โ”€ lock_sema.go
    โ”‚ย ย  โ”œโ”€โ”€ rwmutex.go

    // net
    โ”‚ย ย  โ”œโ”€โ”€ netpoll.go
    โ”‚ย ย  โ”œโ”€โ”€ netpoll_epoll.go
    โ”‚ย ย  โ”œโ”€โ”€ netpoll_fake.go
    โ”‚ย ย  โ”œโ”€โ”€ netpoll_kqueue.go
    โ”‚ย ย  โ”œโ”€โ”€ netpoll_stub.go

    // cgo
    โ”‚ย ย  โ”œโ”€โ”€ cgo
    โ”‚ย ย  โ”œโ”€โ”€ cgo.go
    โ”‚ย ย  โ”œโ”€โ”€ cgo_mmap.go
    โ”‚ย ย  โ”œโ”€โ”€ cgo_sigaction.go
    โ”‚ย ย  โ”œโ”€โ”€ cgocall.go
    โ”‚ย ย  โ”œโ”€โ”€ cgocallback.go
    โ”‚ย ย  โ”œโ”€โ”€ cgocheck.go
    โ”‚ย ย  โ”œโ”€โ”€ cpuprof.go
    โ”‚ย ย  โ”œโ”€โ”€ textflag.h
    โ”‚ย ย  โ”œโ”€โ”€ funcdata.h
    โ”‚ย ย  โ”œโ”€โ”€ defs_linux_amd64.go
    โ”‚ย ย  โ”œโ”€โ”€ defs_darwin_amd64.go
    โ”‚ย ย  โ”œโ”€โ”€ plugin.go

    // time
    โ”‚ย ย  โ”œโ”€โ”€ time.go
    โ”‚ย ย  โ”œโ”€โ”€ timestub.go
    โ”‚ย ย  โ”œโ”€โ”€ timestub2.go

    // race/trace/pprof/msan
    โ”‚ย ย  โ”œโ”€โ”€ profbuf.go
    โ”‚ย ย  โ”œโ”€โ”€ proflabel.go
    |   โ”œโ”€โ”€ race.go
    |   โ”œโ”€โ”€ race0.go
    |   โ”œโ”€โ”€ race_amd64.s
    |   โ”œโ”€โ”€ trace.go
    |   โ”œโ”€โ”€ traceback.go
    โ”‚ย ย  โ”œโ”€โ”€ debug.go
    โ”‚ย ย  โ”œโ”€โ”€ debugcall.go
    โ”‚ย ย  โ”œโ”€โ”€ msan.go
    โ”‚ย ย  โ”œโ”€โ”€ msan0.go
    โ”‚ย ย  โ”œโ”€โ”€ msan_amd64.s

    // call utils
    โ”‚ย ย  โ”œโ”€โ”€ extern.go
    โ”‚ย ย  โ”œโ”€โ”€ symtab.go
    โ”‚ย ย  โ”œโ”€โ”€ cpuflags_amd64.go
    โ”‚ย ย  โ”œโ”€โ”€ cputicks.go
    โ”‚ย ย  โ”œโ”€โ”€ env_posix.go
    โ”‚ย ย  โ”œโ”€โ”€ error.go
    โ”‚ย ย  โ”œโ”€โ”€ print.go
    โ”‚ย ย  โ”œโ”€โ”€ write_err.go
    โ”‚ย ย  โ”œโ”€โ”€ relax_stub.go
    โ”‚ย ย  โ”œโ”€โ”€ stubs.go
    โ”‚ย ย  โ”œโ”€โ”€ stubs2.go
    โ”‚ย ย  โ”œโ”€โ”€ stubs3.go
    โ”‚ย ย  โ”œโ”€โ”€ stubs_linux.go
    โ”‚ย ย  โ”œโ”€โ”€ stubs_nonlinux.go
    โ”‚ย ย  โ”œโ”€โ”€ stubs_x86.go
    โ”‚ย ย  โ”œโ”€โ”€ sys_darwin.go
    โ”‚ย ย  โ”œโ”€โ”€ sys_darwin_amd64.s
    โ”‚ย ย  โ”œโ”€โ”€ sys_linux_amd64.s
    โ”‚ย ย  โ”œโ”€โ”€ sys_wasm.go
    โ”‚ย ย  โ”œโ”€โ”€ sys_wasm.s
    โ”‚ย ย  โ”œโ”€โ”€ sys_x86.go
    โ”‚ย ย  โ”œโ”€โ”€ unaligned1.go
    โ”‚ย ย  โ”œโ”€โ”€ vdso_elf64.go
    โ”‚ย ย  โ”œโ”€โ”€ vdso_linux_amd64.go


    // sync&atomic
    โ”‚ย ย  โ”œโ”€โ”€ atomic_pointer.go
    โ”‚ย ย  โ””โ”€โ”€ internal
    โ”‚ย ย   ย ย  โ”œโ”€โ”€ atomic
    โ”‚ย ย   ย ย  โ””โ”€โ”€ sys
    โ”œโ”€โ”€ sync
    โ”‚ย ย  โ”œโ”€โ”€ atomic
    โ”‚ย ย  โ”œโ”€โ”€ cond.go
    โ”‚ย ย  โ”œโ”€โ”€ map.go
    โ”‚ย ย  โ”œโ”€โ”€ mutex.go
    โ”‚ย ย  โ”œโ”€โ”€ once.go
    โ”‚ย ย  โ”œโ”€โ”€ pool.go
    โ”‚ย ย  โ”œโ”€โ”€ runtime.go
    โ”‚ย ย  โ”œโ”€โ”€ rwmutex.go
    โ”‚ย ย  โ””โ”€โ”€ waitgroup.go
    โ”‚

    // syscall
    โ”œโ”€โ”€ syscall
    โ””โ”€โ”€ unsafe

่ฎธๅฏ

Go under the hood | CC-BY-NC-ND 4.0 & MIT ยฉ changkun