幫助中心 | 我的帳號 | 關於我們

深入理解Go語言/電腦技術開發與應用叢書

  • 作者:編者:劉丹冰|責編:趙佳霓
  • 出版社:清華大學
  • ISBN:9787302613664
  • 出版日期:2023/04/01
  • 裝幀:平裝
  • 頁數:458
人民幣:RMB 119 元      售價:
放入購物車
加入收藏夾

內容大鋼
    本書詳細講解在學習Go語言必經之路中的重點知識,採用大量精美詳細的圖文進行介紹,內容講解深入淺出,極大地降低了理解Go語言底層精髓的學習門檻。
    本書共分為3篇:第一篇(第1?4章)深入講解Go語言中GPM模型、Go語言垃圾回收中的GC三色標記法與混合寫屏障、Go語言內存管理模型、網路I/O復用併發模型等;第二篇(第5?12章)為Go語言實戰中需要進階的知識盲區介紹;第三篇(第13?21章)為基於Go語言從0到1實現輕量級網路服務框架Zinx及相關應用案例。
    本書主要面向的讀者是已經具有軟體編程開發經驗的工程師、系統開發工程師、期望(由Python、PHP、C/C++、Ruby、Java等編程語言)轉職到Go語言開發的後端工程師、期望深入理解Go語言特性的電腦軟體學者等。

作者介紹
編者:劉丹冰|責編:趙佳霓
    劉丹冰(Aceld),Zinx(Golang輕量級TCP伺服器開源框架)作者,現就職於好未來集團,擔任Golang架構師、服務端高級專家。擁有多年互聯網、網路安全、智能家居領域及分散式雲服務研發經驗,華為雲MVP。曾就職于啟明星辰,從事網路安全IDS(Intrusion Detection System,入侵檢測系統)、IPS(Intrusion Prevention System,入侵防禦系統)等研發工作。參與過國家互聯網應急中心關口監測系統研發,並且擔任重要崗位。曾任Haier U+ Smart Home智能家居、智能電視服務研發工程師;傳智教育科技C/C++、Golang項目研究員,參與並創作過多部C/C++、Golang研發課程及項目;Golang、C/C++業務線教學科研負責人。

目錄
第一篇  Go語言修煉必經之路
  第1章  深入理解Go語言協程調度器GPM模型
    1.1  Go語言「調度器」的由來
      1.1.1  單進程時代不需要調度器
      1.1.2  多進程/多線程時代的測度器需求
      1.1.3  協程提高CPU的利用率
      1.1.4  Go語言的協程Goroutine
      1.1.5  被廢棄的Goroutine調度器
    1.2  Go語言調度器GPM模型的設計思想
      1.2.1  GPM模型
      1.2.2  調度器的設計策略
      1.2.3  go func()調度流程
      1.2.4  調度器的生命周期
      1.2.5  可視化GPM編程
    1.3  Go調度器調度場景過程全解析
      1.3.1  場景1:G1創建G2
      1.3.2  場景2:G1執行完畢
      1.3.3  場景3:G2開闢過多的G
      1.3.4  場景4:G2本地滿再創建G7
      1.3.5  場景5:G2本地未滿再創建G8
      1.3.6  場景6:喚醒正在休眠的M
      1.3.7  場景7:被喚醒的M2從全局隊列批量取G
      1.3.8  場景8:M2從M1中偷取
      1.3.9  場景9:自旋線程的最大限制
      1.3.10  場景10:G發生阻塞的系統調用
      1.3.11  場景11:G發生非阻塞的系統調用
    1.4  小結
  第2章  Go語言混合寫屏障的GC全場景分析
    2.1  Go V1.3標記-清除演算法
      2.1.1  標記清除(Mark and Sweep)演算法的詳細過程
      2.1.2  標記清除演算法的缺點
    2.2  Go V1.5的三色標記法
      2.2.1  三色標記法的過程
      2.2.2  沒有STW的三色標記法
      2.2.3  觸發三色標記法不安全的必要條件
    2.3  Go V1.5的屏障機制
      2.3.1  「強-弱」三色不變式
      2.3.2  插入屏障
      2.3.3  刪除屏障
    2.4  Go V1.8的混合寫屏障
      2.4.1  混合寫屏障(Hybrid Write Barrier)規則
      2.4.2  場景1:堆刪除引用,成為棧下游
      2.4.3  場景2:棧刪除引用,成為棧下游
      2.4.4  場景3:堆刪除引用,成為堆下游
      2.4.5  場景4:棧刪除引用,成為堆下游
    2.5  小結
  第3章  Go語言內存管理洗髓經
    3.1  何為內存
    3.2  內存為什麼需要管理
    3.3  操作系統是如何管理內存的

      3.3.1  虛擬內存
      3.3.2  MMU內存管理單元
      3.3.3  虛擬內存本身怎麼存放
      3.3.4  CPU內存訪問過程
      3.3.5  內存的局部性
    3.4  如何用Go語言實現內存管理和內存池設計
      3.4.1  基於Cgo的內存C介面封裝
      3.4.2  基礎內存緩衝Buf實現
      3.4.3  內存池設計與實現
      3.4.4  內存池的功能單元測試
  ……
第二篇  Go語言編程進階之路
第三篇  Go語言框架設計之路

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032