Go Switch to a register-based calling convention for Go functions

自己對於 memory layout 相關議題都蠻感興趣的,而這次 Go 1.17 有一項效能改善的 proposal: switch to a register-based calling convention for Go functions 剛好跟 memory 有相關,因此就看了一下 proposal 文件介紹,不但複習了在計算機架構中曾接觸到的 calling convention 知識,也對於 Go 內部機制有更多認識。

other 近況雜談

一個月沒有更新 blog,因為遇上了一些事情要處理,再加上剛好正值工作轉換之際,以及面對研究所考試和 paper study,所以就停筆了,不過還是有在持續地進修,學習的包含 security 和 system design 部分,並且每天刷 leetcode 訓練邏輯能力防失智。

other L1 Cache architecture in ARM

L1 Cache architecture 之所以會看這個主題,是因為網路黑貓(Champ Yen)大大分享 ARM 從 virtual cache 轉到 physical cache 的利弊。雖然曾經從書上看過兩者差異性,不過沒搭配硬體架構,總覺得沒有好好了解。因此這篇整理了 ARM Programmer’s Guide 的內容,並透過實際例子來探討 VIVT (virtual indexed vritual tagged)、VIPT(virtual indexed physical tagged)、PIPT(physical indexed physical tagged) 的差異性。

Linux Kernel TH02 sensor device driver

馬上就要過年了,最近在整理物品的時候,突然找到一年前為了玩板子而亂買的 Grove sensor,回想當時雖然對於韌體很感興趣,不過由於工作關係,因此把大部分進修時間都花在 Web 議題,沒能完成 sensor 韌體,留下一個遺憾。而既然這次被我找出來,近期工作又是都以 FPGA 板子居多,對於相關概念已有基本認知,覺得是時候把它實作出來,了結一年前給自己的課題。 硬體 Grove Temperature&Humidity Sensor (High-Accuracy & Mini) Raspberry Pi 3 Model B (Linux kernel 5.

Operating System CSE 506 Lab 3 - Interrupts

閒聊 2020 年過去了,因為年底各種考試和工作, Lab3 下半部份延遲到現在才完成。雖然拖蠻久的,但是往好的方向看就是有在持續進行下去,沒有放棄就是好結局!最近心境上有蠻多變化的,其中本來對於目前工作內容很疑惑,覺得跟純軟生活落差太大,但是在工作中慢慢地發現自己對於 security 領域的認知嚴重不足,如果能好好學習 security 相關知識,對於自己和未來發展還是挺有幫助的,結合 security 與 embedded or cloud 去發展,是一個有趣又有挑戰性的目標,因此目前就朝著這方向努力,希望今年可以在 COSCUP 分享 security 相關議題。

Web Security Security model of password managers

閒聊 這篇算是接續上次 Meetup 分享會的內容,由於有人提出 password manager 的相關疑問,覺得會不會因為使用 password manager 導致所有隱私資料被看光。與其猜測,不如來看看他們所提出的 security 方案,這篇以 1password 為例,整理其中 security white paper 所提到的保存資料方式,來檢視是不是能夠防止資料被盜取。

Web Security GDG Hsinchu 12 月 Meetup - Improve Your Web Authentication Security

閒聊 12 月份完成好幾項目標,其中一項就是催生 GDG Hsinchu 12 月份的 Meetup 線下聚會。這次活動跟著 Google 在 12 月時舉辦的 Chrome Dev Summit 2020 一同推出,取自 CDS 中的部分 SMS-OTP 內容,並結合既有的 password-based authentication 與未來有可能普及的 FIDO 2 認證機制,整理出一份 Web Authentication Security 的技術分享。其中對我來說,比較有趣的地方在於理解機制的實現原理,包含資料溝通和驗證,以及可能會產生的安全問題。其實標準規範對於開發者來說相當重要,透過分析 protocol 的行為,可以讓開發者在開發整合性功能的時候,更清楚這些 library 要在什麼時機點使用,以及為什麼要使用這些 functions,這也是我每次進行技術分享時,最希望能夠帶給與會者的內容。

Operating System CSE 506 Lab 3 - User Environments(Processes)

閒聊 之前在辦活動的時候,得知有朋友在 follow 我的 Blog ,真是讓我非常訝異,因為我一直是默默撰寫文章,而且雖然我有參與 Golang 和 GDG 社群,但是我寫的內容很常都跟 Golang 和 Google 技術沒什麼太大關係 XD 非常感謝各位的觀看,之前有近兩個月都沒更新,感覺有點罪惡,以後會盡量定期更新的。

Operating System CSE 506 Lab2 - Memory Management and Virtual Memory Mapping

閒聊 上次寫完 Lab 2 source code study 之後,一晃眼就過了近兩個月。中間被各種事物攔截,加上剛好有些機遇和機會,因此挪了一些時間去準備,等事情有比較明朗後再跟大家分享。此外,學校也開學了,這學期修了偏硬體架構的課程,包含 RISC-V 和架構效能分析等,單智君教授的教學內容很好,聲音也很溫柔,非常喜歡這位教授的課程。

Go Conference GopherCon TW 2020 場務組心得

前言 從 2020 年初就開始籌備的第一屆 GopherCon TW ,終於在 11/14(六) 美好地落幕。第一次籌備就遇上疫情問題,導致時程一再延遲,還有首次主辦 conference 經驗不足,有一些遺漏以及沒有注意到的地方,所以自認籌辦期間沒有做的很好 TT