我是極簡主義者,崇尚簡潔明快的代碼風格,這也可能是我不喜歡Java全家桶的原因……當然我說的簡潔是要建立在不降低可讀性的前提下,即不影響代碼本身的表現力。如果為求代碼精簡而讓代碼晦澀艱深同樣不可取。本文會介紹10個條款,后續(xù)還會陸續(xù)更新相關的內容,請大家持續(xù)關注!1.善用empl...
近10年,技術迭代迅速,科技改變了人類社會的生活方式,中國互聯(lián)網從無到有,發(fā)展迅猛,互聯(lián)網用戶數量激增。截至2020年底中國移動互聯(lián)網用戶總量已增長至16億,5G網絡用戶數超過1.6億。面對當下的局勢,用戶體驗自然就成為了互聯(lián)網企業(yè)面臨的最大考驗。那么對于系統(tǒng)升級快,用戶基數大,...
??大家好,我是唐唐!本文關于C內存管理學習筆記自侯捷,上次筆記見?C內存管理(一)。1.各個標準分配器實現1.1VC6.0malloc在第一節(jié)中提到,malloc的內存塊布局如上,其中cookie(記錄區(qū)塊大小)小,浪費率高,因為cookie始終占8字節(jié)。cookie是我們不需...
↓推薦關注↓1.PageCache1.1PageCache是什么?為了理解PageCache,我們不妨先看一下Linux的文件I/O系統(tǒng),如下圖所示:Figure1.Linux文件I/O系統(tǒng)上圖中,紅色部分為PageCache??梢奝ageCache的本質是由Linux內核管理的...
↓推薦關注↓看完后不再迷茫!在校學生的編程語言和數據結構的基礎還不錯,我認為應該在《操作系統(tǒng)》和《計算機體系結構》這兩門課上下功夫,然后才去讀編程方面的APUE、UNP等書。下面簡單談談我對學習這兩門課的看法和建議,都是站在服務端程序員的角度,從實用主義(pragmatic)的立...
socketfd長什么樣子?什么是socketfd?粗糙的來講,就是網絡fd,比如我們最常見的C/S客戶端服務端的編程模式,就是網絡通信的一種方式。撇開底層和協(xié)議細節(jié),網絡通信和文件讀寫從接口上有本質區(qū)別嗎?其實沒啥區(qū)別,不就是讀過來和寫過去嘛,簡稱IO。我們先看一下socket...
↓推薦關注↓hi,大家好,內存拷貝是比較耗時操作,零拷貝是常用優(yōu)化手段,今天分享的文章就是Linux系統(tǒng)零拷貝技術,Kafka和MySQL開源組件都用到這個核心技術,希望大家可以掌握。DMA與零拷貝技術注意事項:除了DirectI/O,與磁盤相關的文件讀寫操作都有使用到pagec...
極簡主義者,崇尚簡潔明快的代碼風格,這也可能是不喜歡Java全家桶的原因……當然我說的簡潔是要建立在不降低可讀性的前提下,即不影響代碼本身的表現力。如果為求代碼精簡而讓代碼晦澀艱深同樣不可取。本文會介紹10個條款。1.善用emplaceC11開始STL容器出現了emplace(置...
hi,上次分析了RCU核心思想:深入理解RCU核心原理,后面說會分享一篇RCU的源碼剖析,其實我這邊已經總結得差不多:但自己思考了一下,發(fā)現大部分都是代碼分析,這樣很多人其實并不喜歡看源代碼分析(代碼有點多),所以可能其他方式更好,比如圖解,我發(fā)現已經有人搞了這個,而且質量也挺高...
↓推薦關注↓今天,為大家解讀一幅來自TurnOff.us的漫畫“InSideTheLinuxKernel”。TurnOff.us是一個極客漫畫網站,作者DanielStori畫了一些非常有趣的關于編程語言、Web、云計算、Linux相關的漫畫。今天解讀的便是其中的一篇。在開始之前...
【導語】:開源的在線流程圖繪制工具。簡介Wireflow是一個免費的、開源的在線流程圖繪制工具,用于創(chuàng)建漂亮的流程圖,無需Photoshop技能。支持使用100多種自定義圖形、可進行多人協(xié)作、權限分配、實時聊天等功能,并擁有豐富的功能組件庫。Wireflow的誕生是為了在項目規(guī)劃...
最近在做一個項目,遇到一個問題,運行于ARM上的threadx在與DSP通信采用消息隊列的方式傳遞消息(最終實現原理是中斷共享內存的方式),在實際操作過程中發(fā)現threadx總是crash,于是經過排查,是因為傳遞消息的結構體沒有考慮字節(jié)對齊的問題。隨手整理一下C語言中字節(jié)對齊的...
前言于我而言,最開始學習就是C,除了計算機專業(yè),其他專業(yè)可能學習的第一門編程語言為C語言,還是譚浩強爺爺那本,當時想著有點C基礎,無外乎就是C語言的升級版,于是開啟了C的路程。語言這個東西,可能過后你會發(fā)現,它真就一工具,你如果想做個爬蟲或者數據分析,那多半會選擇Python,無...
↓推薦關注↓CVE-2021-22555:一個影響2006年(Linuxkernelv2.6.19-rc1發(fā)布)至今(Linuxkernelv5.12-rc8)的所有Linux內核版本的漏洞,可導致本地提權與容器逃逸;該漏洞是個內核級漏洞,跟Linux的發(fā)行版本沒有關系,也就是說...
混跡技術圈的這些年,你都聽到過哪些奇奇怪怪的發(fā)音?比如,密鑰讀“miyue”?AJAX讀“阿賈克斯”?閾值閥值傻傻分不清楚?今天,就讓他二哥來給大家上一課,糾正一下技術圈內的那些不標準但是很普遍的發(fā)音!小本本拿出來!點擊空白處查看標準發(fā)音?▼點擊空白處查看標準發(fā)音?▼點擊空白處查...