本文github庫:https://github.com/xiaoemoxiw/docker.g 國內碼云庫:https://gitee.com/jlgg/docker.gi...
使用原則 庫自帶連接池沃疮,使用方不需自行實現坤按。*sql.DB 線程安全,開箱即用赘那,屏弊了底層創(chuàng)建連接的實現 Open 只是創(chuàng)建類,調用一次即可评雌,使用前需要 Ping 確保連接正...
1.0版本的select已經看過了,2.6中已經完全重構了奔誓,代碼每次看都好像懂了斤吐,但每次回憶核心流程又感覺有點勉強,我希望通過一種關鍵流程的形式去分析厨喂,而不是貼一大堆的代碼 ...
在linux中使用了分頁機制贫母,分頁機制把線性地址空間分成固定大小的頁面,如果包含線性地址的頁面當前不在物理內存中盒刚,處理器就會產生一個頁錯誤異常腺劣。然后交給內核處理。 在init...
趁著linux內核看得差不多了因块,想著把網絡部分拿來看看橘原,從1.0版本后就開始支持網絡了,但看了下發(fā)現很多概念不清晰涡上,決定找出tcp-ip學習學習趾断,為內核網絡部分做做準備。這些...
先說說內核的職責 我們已經知道了所有的io操作都是交給內核去處理了吩愧,在linux中歼冰,已經抽象出了一個文件系統(tǒng),對任何io設備的讀寫都可以當做對文件系統(tǒng)的某一個文件進行讀寫耻警。文...
go func...會被編譯成newproc方法隔嫡,我們可以隨便寫一個測試文件編譯后用gdb打開 golang的參數調用方式和C差不多,都是按參數從右到左入棧甘穿,所以siz是第一...
chan是go中csp的關鍵腮恩,網上一直說chan性能一般,因為用到了鎖温兼,我就找來源碼研究了一下 我們先看chan對象結構秸滴,發(fā)現有一個lock的鎖字段 那我們直接看發(fā)送和接收方...
對于寫后端語言來說的人,文件操作是很常見的募判。go對文件操作的支持非常的好荡含。今天通過go中文件操作記錄下syscall相關內容咒唆。 先看下文件定義: 是不是夠簡潔的,而且注釋寫的...
go的方法可以直接返回局部變量的指針释液,這主要依賴go是有runtime的語言全释,編譯器在發(fā)現有變量可以逃逸出去的時候會在堆上分配變量而不是棧上,這樣就可以返回該變量的指針了误债,且...
今天看go的runtime的時候浸船,內存堆初始化的時候是調用mmap申請的虛擬內存,于是搜了下0.11的linux源碼寝蹈,發(fā)現還沒有實現李命,就又找了1.0版本的(畢竟越早代碼越少都...
計算機的世界只有0和1,為了表示浮點數箫老,就必須要對其編碼》庾郑現在大家基本上用的都是IEEE浮點編碼表示,它分為單精度和雙精度兩種編碼格式耍鬓,顧名思義周叮,雙精度能表示更大的精度。 單...
塊設備在linux中的分類 塊設備通俗點就是可以隨機尋址的設備棕叫,內存林螃,軟盤,硬盤這些都是塊設備俺泣。linux給外設分了幾個大類別1代表內存設備疗认,2代表軟盤,3代表硬盤伏钠,4代表t...