原创 x64 ASM 常用匯編指令

語法習慣 這裏主要說AT&T風格的彙編語言風格。因爲gdb看反彙編默認的風格就是AT&T風格的,Intel風格的這裏就不做介紹。 立即數,$ 開頭 寄存器,% 開頭 取地址裏面的值,偏移量(%寄存器)// 除了 lea 取地址指

原创 網絡安全:非對稱加密RSA算法

RSA算法 RSA算法可以說是使用最爲廣泛的非對稱加密算法。在1977年由羅納德·李維斯特(Ron Rivest)、阿迪·薩莫爾(Adi Shamir)和倫納德·阿德曼(Leonard Adleman)一起提出的,並取三人名字的首

原创 Linux C pthread多線程,join和detach

Linux C使用pthread進行多線程編程時,有一個注意點:新啓動的子線程一定要在主線程或啓動它的父線程中join,或者本身被設置爲detach,否則會引起資源泄露,資源比如每個線程都有自己的運行stack,內核中的task_

原创 HTTP1.1 基礎: 用C語言實現200行內的極簡http server

對HTTP1.1協議有基本的瞭解後,就可以用C語言來實現一個極簡的http server了。HTTP1.1 協議基礎可以看這篇文章 HTTP 基礎: 請求和響應的消息交互細節。 這裏實現的極簡 http server 主要完成此功

原创 Linux shell腳本引用類似include其他腳本的方法

Shell 腳本規模大了總會比較難維護,但是很多時候又得必須用。適當的拆分文件的方法挺好,Shell腳本沒有include或者import機制,查了資料就是用source命令來解決。 一個小例子: test.sh #!/bin/b

原创 C語言用結構體給另一個同類型結構體賦值: 用等號即可

看到很多C代碼的結構體賦值都是用memcpy函數來拷貝,其實根本不需要,用等號直接賦值即可。結構體描述的是的一塊連續內存的內存佈局,同類型的一個結構體變量給另一個結構體變量賦值,使用等號編譯不會有任何問題,其效果顯然也和人直覺認爲

原创 Go語言模型:Linux線程調度 vs Goroutine調度

調度本質上體現了對CPU資源的搶佔。調度的方式可以分爲: 搶佔式調度。依賴的是中斷機制,通過中斷搶回CPU執行權限然後進行調度,如Linux內核對線程的調度。 協作式調度。需要主動讓出CPU,調用調度代碼進行調度,如協程,沒有中

原创 從"阿里P8程序員徵婚"事件看如何正確的審視自己

2019年9月下旬的一個網絡熱點知乎鏈接:如何看待「86年男生阿里 p8 年薪近兩百萬,就想找一個90後獨生女」一事 ? 附一下我比較欣賞的@Cat Chen的回答: 感覺是偏科狀元想要匹配全科優才生,既不會說配不上,但也不至

原创 提高編程速度的一些個人經驗

對於常規的業務代碼,常見自動化腳本,偶爾迸發的想法原型,快速寫代碼是有套路可尋的,並且可以做針對性訓練。說說我個人的經驗: 常見的API和編程模型,要記住,就像背單詞一樣。 比如:寫代碼經常用到STL,那麼常見類和的API,跑跑d

原创 HTTP1.1 基礎: 請求和響應的消息交互細節

HTTP1.1 基礎概念 HTTP/2在2015年已推出,本文主要介紹的是HTTP1.1。下面是RFC2616對HTTP1.1的描述: The Hypertext Transfer Protocol (HTTP) is an a

原创 關於時間管理:計劃要粗,記錄要細

大部分時間管理的誤區,就是把時間管理搞的太複雜了。耗費太多精力在事無鉅細的規劃上,而太過精細的計劃往往很容易受到衝擊,無法很好的執行並給人帶來了負反饋。在樊登讀書看過一個例子很有同感: 不要太大力氣去做整理,因爲整理這件事情本身

原创 macOS安裝PyTorch跑MNIST數據集

知乎上看到一個問題很有意思:TensorFlow 真的要被 PyTorch 比下去了嗎? ,大致看了下下面的回答,站隊PyTorch確實不少。 自己就嘗試跑一下PyTorch,感受一下: 安裝Python3,直接去官網下載mac

原创 Python的模塊搜索路徑和包管理

Python模塊搜索路徑 Python模塊搜索路徑的官方文檔: https://docs.python.org/3/tutorial/modules.html#the-module-search-path When a modu

原创 Golang筆記:包管理機制

Go語言使用包組織源代碼,並實現命名空間的管理。Go不強制包名和所在目錄同名,但好的工程實踐建議同名。包定義不包括目錄路徑,但引用一般是相對GOPATH的全路徑引用,所以包一般都會放在公司或個人的域名目錄下。 包引用 Go語言自

原创 Linux C/C++ 程序員畢業工作四年多來的感想

時間過得真快,從2015年畢業參加工作,到現在2019年底,已經工作了四年多,自己也到了而立之年。從此以後,作爲國內一名程序員,年齡就開始慢慢變爲減分項,一想到整個行業和國內一線大廠都特麼這個尿性真是蛋疼。不過還好在初期收入不錯,