VS Code + GNU Global - 打造 Trace Linux Kernel 環境
Linux Kernel 是一個偉大的開源專案,同時也是相當龐大的專案,要 Trace 這麼大的專案總是要準備一點輔助工具才會有效率。這篇主要介紹使用 VS Code 編輯器,加上我改的 C/C++ GNU Global 套件來 Trace Linux Kernel,對一些大型的 C/C++ 專案也適用。
Linux Kernel 是一個偉大的開源專案,同時也是相當龐大的專案,要 Trace 這麼大的專案總是要準備一點輔助工具才會有效率。這篇主要介紹使用 VS Code 編輯器,加上我改的 C/C++ GNU Global 套件來 Trace Linux Kernel,對一些大型的 C/C++ 專案也適用。
Stable Ubuntu 18.04 LTS 正式 release 以後,大家應該陸陸續續開始從 16.04 升上去了,不過 WSL (Windows Subsystem for Linux) 內的 Ubuntu 並不會自動升級,應該也有人發現 Microsoft Store 內多出了 Ubuntu 16.04 LTS 和 Ubuntu 18.04 LTS 兩個 Image,那到底該如何更新呢?
相信很多人很多時候都會想要把 enum 列舉的數值轉換成 string,方便寫出檔案或顯示到 UI 上,這種轉換的方法在很多高階語言,例如 C#、Java 等都有方法直接支援,但是 C/C++ 就沒這麼方便了。以下介紹幾種在 C++ 實作 enum 轉 string 的方法。
最近在看 Linux NFS 相關的程式碼,趁還有點記憶的時候來筆記一下,這篇主要筆記 NFS filehandle 的運作機制。
因為 Chrome 記憶體吃太兇的關係,最近我改用 Firefox 瀏覽器了,用起來很順的但一直有一個問題:Firefox 似乎會吃 Ubuntu gtk theme 的顏色。這導致某些網站的文字框或下拉式選單會變成暗色,看起來很奇怪,甚至會造成瀏覽障礙,這篇筆記如何複寫 Firefox 套用到的主題顏色。
我覺得現在的版本控制主流已經是 git 了,但有一些 Open Source 專案的版本控制會選擇用 Mercurial (hg),這兩個版本控制系統有著不少相似的地方,都是不錯的工具。這篇主要教學如何將 hg 的專案移轉到 github 上,並保留所有的 commit 紀錄。