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