Kernel, Virus and Programming

Compile verilator in centos 7

Has to use gcc 8 Otherwise you got this


2023/01/22 0

香港啲阿叔,普遍都係kai嘅

呢篇文章係俾CS/EE嘅學生睇,目的係為左佢地唔好被香港啲阿叔摧毀左佢地做科技嘅熱情。係個社會上有班阿叔,年紀四五六十歲,個title掛到好大,又director又乜又柒咁,其實佢地嘅本質係kai嘅。 呢幾年我自己出錢資助左條team搞cpu,每年都會見到不同嘅阿叔,佢地嘅行為令我要寫呢篇文告誡班後生仔同呢班友相處要小心啲,小心自己做科技嘅熱情被呢班阿叔摧毀左。呢班友年紀係你地兩三倍,工作經驗可能係你地N部,就好似係山腳嗰度望咩山都高,所以你地要小心唔好佢地講乜你都信,呢個係好危險的。 啲阿叔根本就無實際經驗,一味鳩吹 做一個project你有技術問題,你可以試下問呢班阿叔,目啲係為左玩下佢地,佢地百分之九十幾係唔會答到你問嘅問題,當佢地答唔到就會講自己以前工作做過哂,不過呢啲low end野無做好耐,所以而家當可憐你指個方向你啦,你自己試下。你老味實情就係唔!撚!識!所有讀CS/EE嘅同學唔好被佢地fake到,技術呢會事好似踩單車咁,你幾年無踩跳上架單車到都會踩到,唔存在對個軟件一啲實際操作都唔識但又做過幾年呢回事。所以所有同學唔好因為啲阿叔鳩指你一個方向就以為佢識,唔好仲要以為佢地真係好有經驗。 唔係非technical就代表係其它非technical嘅方面都好勁好有經驗 啲做左管理好多年又或者做左好耐director嘅人唔代表好熟悉個market,相反地佢地絕大多數都係對個market無認識。啲學生搞startup班阿叔係技術上無法作出指導,佢地就會鳩指班學生要點做marketing,點到分析個business plan,講真,收!撚!皮!啦!你地做學生以為啲阿叔係個行頭到做左幾十年,升左上管理層就自自然然對個market好熟,呢個諗法好make sense但真係kai都無人有。如果你地班後生仔搞啲新野佢地聽幾句就知盤生意點搞,佢地發哂㗎啦,洗同你係到吹水咩。舉個solid嘅例子,香港好多sales director其實唔識sell野,更加唔熟market,否則佢地做左老細好耐啦。你地會有懷疑咁點解佢地會升到做sales director,咪因為佢地識屌sales仔囉,根本同熟唔熟個market一啲關係都無。佢地入間公司唔係間公司第一日成立就入去,係間公司成立左好耐,有哂既定業務先入,佢地照run㗎炸。唔好再信班阿叔講野啦。 大部份嘅阿叔都係虎頭蛇尾 人地蘇姿丰做半導體做左幾十年講野梗係要聽啦,香港啲阿叔做下呢樣人十口心下嗰樣,你地學生以為年紀大啲講野唔多唔少都要聽下,其實呢班友根本都無一件事做得深入。你地啲學生唔好佢地講乜都信。一個CS畢業嘅阿叔如果0code其實都可以收線,唔好被啲阿叔迷惑左以為佢地好專業係一件事到,佢地絕大部份都唔係,如果佢地係就唔係連你地啲學生問題都無法俾一個solid嘅回應。


2023/01/15 0

點解香港人搞open source project唔掂嘅原因

好認真咁搞左五年open source project,認真程度係出錢又出力,而家總結點解香港人搞open source唔掂,又或者好難掂嘅原因 香港人動手能力極其低下 其實呢一點都唔洗啲咩證明同解釋,香港IT界人技術人仕其本上打份牛工或者為生活做下freelance仲有少少力之外根本就乜力都無。無力嘅原因我唔知,但係估計離唔開根本唔鐘意寫program呢回事。嗰啲阿叔話就有二十年經驗,其實減去為左份糧而工作嘅經驗基本上一年經驗都無。佢地嘅技術主要黎自份牛工嘅隨學隨做,佢地會好自豪咁講「嗰嗰都係咁㗎啦」,佢哋嘅世界自由香港牛工市場,牛場就係佢地生日嘅全部。外個嘅open source developer夢想改變世界嘅時候佢地會用所謂嘅廿年經驗去點頭評足,好似可批判到單咁,好撚猥瑣 香港根本無前輩可以照耀後來者 都唔好話提點下你,以我經驗香港啲阿叔有超過50%會叫你不如唔好搞,原因嘅白痴程度突破天際 : 學界基本上係搞笑 香港學界係唔會復Email,唔好旨意你有技術問題可以問大學,一定唔會復你。香港大學教授嘅動手能力人盡皆知,就連香港嘅大學生都知自己教授唔會做實際野。係香港一個教授一年出12篇理文咁你估到佢地係到做緊乜野,香港學界唔可能堅負起作為一個城市嘅大腦嘅角色,可以咁講對普通市民,學界簡直係腦殘。 無政府支持 創新科技署無一個支援計劃係支持open source,佢地每一個支援計劃都要寫business proposal,佢地最想就係錢,直接拉高到香港GDP,你搞open source如果無即時market佢地係唔會支持你。同理科學園數碼港創科局都係一樣。因為政府零支持,加上滿腦子講商業價值,所以香港無前瞻性嘅民間科學研究,民間全面熄火。係政府嘅角度要做科學研究只會依賴大學同研究院,但兩者係開源嘅研究實力和貢獻都非常底下。 香港無籌款呢樣野 Apache group同GNU group有一大部份經費係黎自籌款而香港係無籌款呢單野,外國嘅企業用open source軟件,大嘅公司會捐錢資助個project,有好多會出埋人一齊改善個software,而香港嘅企業同政府係唔會咁做。香港班客佢地嘅屬性係西客,用都不特止仲要不停投訴,隻手同跛嘅無分別,唔會落手落腳去改良開源軟件,所以開唔開源對佢地黎講無分別。


2022/12/25 0

ICESugar board unable to mount in ubuntu

If you unable to mount your icesugar board in ubuntu and saying this error “Not authorized to perform operation”, this link resolve it https://benjaminnl.pixnet.net/blog/post/4894925-ubuntu-%E8%A7%A3%E6%B1%BA%E9%9A%A8%E8%BA%AB%E7%A2%9F%E7%84%A1%E6%B3%95%E9%96%8B%E5%95%9F%EF%BC%9Anot-authorized-to-perfo The below board https://item.taobao.com/item.htm?_u=fbuhab0c863&id=631164799875 only work with the extension board on right hand side, the left hand side one dont. I found out the chip in the middle is different, rhs…
Read more


2022/12/15 0

Map pgup and pgdown keys to page up and down in msi notebook in ubuntu

xmodmap -e “keycode 112 = Home”xmodmap -e “keycode 117 = End”


2022/11/28 0

Change qemu to use 16M ram for xv6-riscv

After testing, the minimal memory of xv6-riscv needed is 3MB


2022/10/30 0

Force gdb to read .gdbinit in current folder

GDB User Initialization File The user initialization file contains commands that are executed upon the startup of GDB. It is located in your home directory under the path: ~/.gdbinit Create/edit this file and add the following line to this file: set auto-load safe-path / This allows our programs to use a current directory initialization file,…
Read more


2022/10/16 0

Sync qemu fork

After I forked qemu, these comands can sync the origin repo


2022/10/14 0

Resolved : fatal error: ‘zstd.h’ file not found

Compiling LLVM and have “fatal error: ‘zstd.h’ file not found“, fix it by manually build the zstd git clone https://github.com/facebook/zstd.git make sudo make install


2022/10/08 0

WordPress Component

To redesign our first app engine, we reference WordPress. This is its loading sequence https://medium.com/@dendeffe/wordpress-loading-sequence-a-guided-tour-e077c7dbd119


2022/09/10 0

Change SP list into MS list

just add “?env=WebViewList” at the end of URL


2022/08/25 0

Very good micro python board

https://item.taobao.com/item.htm?spm=a1z09.2.0.0.15412e8duBDI2J&id=645704746945&_u=mbuhab0da05


2022/08/22 0

Tiny STM32 board (STM32F103C8T6)

https://item.taobao.com/item.htm?spm=a1z09.2.0.0.67002e8ddznHy0&id=630403001847&_u=gbuhab04cbb STM32F103C8T6


2022/08/16 0

Generate verilator coverage report in html

Remark: https://aijishu.com/a/1060000000330400 brew install iconv or apt-get install lcov


2022/08/06 0

Solved: The request message is too big. The server does not allow messages larger than 2097152 bytes.

SharePoint Online CSOM error : The request message is too big. The server does not allow messages larger than 2097152 bytes.


2022/07/19 0

好書推介

作者用第一身Manager嘅身份教你點謀劃一個ASIC項目


2022/07/17 0

Great ByteBuddy tutorial

refer to https://blog.csdn.net/wanxiaoderen/article/details/106544773


2022/07/02 0

Solved: SharePoint 2019 ERR_HTTP2_PROTOCOL_ERROR 

Navigate to the registry key 2.HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters. Add 2 new REG_DWORD values, EnableHttp2Tls and EnableHttp2Cleartext, to this registry key. Set both values to 0. Reboot the server  refer to https://stackoverflow.com/questions/67747270/reactjs-neterr-http2-protocol-error-200-with-netcore-in-https/67767129#67767129


2022/06/29 0

Clean Architecture

1. 一棟大廈不可能分成兩棟能完全獨立運作的大廈,但軟件通常由能獨立運作的小軟件所組成,所以有理由相信軟件工程比土木工程複雜 2. 軟件工程是內循環的,意思是用軟件A創造軟件B,之後又用軟件B改進軟件A,而土木工程是單向的,所以有理由相信軟件工程比土木工程複雜 3. 就算摩天大廈,起第一層和起第一百層的技術差不多,但軟件中不同層數的建築方法是完全不同,例如os層和web層,所以有理由相信軟件工程比土木工程複雜 4. 軟件工程中做同一件事的方法比土木工程多很多,所以有理由相信軟件工程比土木工程複雜


2022/06/26 0

SharePoint Error: apps are turned off

Solved by these commands


2022/06/17 0

Convert 64 bits binary string to BigInteger and maintain the sign

The first and third method converted successfully with sign. The second one fail. The reason 3rd way working is : It convert to biginteger and convert to long (then we have sign),then convert back to biginteger (also with sign)


2022/05/08 0

Resolved ICESugar pro blink.v :

ERROR: Module rst_gen contains processes, which are not supported by JSON backend (run `proc` first). Edit Makefile $(TARGET).json: $(OBJS) # yosys -p “synth_ecp5 -json $@” $(OBJS) yosys -p “read_verilog -sv $<” -p “synth_ecp5 -json $@” $(OBJS)


2022/03/27 0

正点原子Mini STM32F103RCT6在STM32CubeMX中玩UART

正點原子的教程是在Keil, 如果要在STM32CubeMX裏玩UART可跟以下步驟 Step 1. Step 2. Comment the whole file Step 3. Add these 3 files from the CD Step 4. Modify usart.c , default example override fputc never works, we have to overrid _write Step 5. Add this


2022/03/25 0

Python read/write jtag via FTDI chip

https://detail.tmall.com/item.htm?id=608821542489&ut_sk=1.YQ5qR5EunYQDAGcswWUaYJAm_21380790_1645025705879.Copy.ShareGlobalNavigation_1&sourceType=item&suid=5126BB92-305B-45E6-8276-4172EC31002C&un=8a0a0fd7954c2f6e4c6e4bed9157ce66&share_crt_v=1&un_site=0&spm=a2159r.13376460.0.0&tbSocialPopKey=shareItem&sp_tk=N1NJYzJlWjE5Qlo=&cpp=1&shareurl=true&short_name=h.flQxYcG&bxsign=scd65TMfrhTLdTfSFZEA2TIorerOMUxRkGPXq1CP3M21S-rVCWvUVwd-K7-LDjMP5iVdFbrvI-pqNh1QUjfy_74ZmHByWfWWbQkQ35VzPBYR0iP51drxemJkdDVH4TmnTfC&tk=7SIc2eZ19BZ%E3%80%8CFT232H/FT2232HL%E6%A8%A1%E5%9D%97USB%E8%BD%ACFIFO/SPI/I2C/JTAG/RS232%E4%B8%B2%E5%8F%A3%E6%A8%A1%E5%9D%97/%E9%AB%98%E9%80%9F%E3%80%8D&app=chrome# https://ftdichip.com/wp-content/uploads/2020/08/AN_110_Programmers_Guide_for_High_Speed_FTCJTAG_DLL-1.pdf Read PWM Pins reference : https://ftdichip.com/wp-content/uploads/2020/07/AN_184-FTDI-Device-Input-Output-Pin-States.pdf


2022/03/03 0

Arduino Uno programme ATTiny85 works

following https://jimirobot.tw/arduino-tutorial-attiny-attiny85-uno-burn/


2022/02/20 0

MRK Wifi 1010 serial is different

MRK Wifi 1010 serial is different than Nano and Uno, the usb in serial and in D13/14 are separate, so code them this way


2022/02/20 0

start point to build our own jtag for our risc-v cpu

After days of hacking, i finally found out there is a dummy driver in openocd. just ./configure –enable-dummy and run it by ./bin/openocd -c ‘interface dummy’ -c ‘adapter_khz 1’ , you can see the dummy driver is running and in the function “static int dummy_write(int tck, int tms, int tdi)”, we can manually toggle the…
Read more


2022/02/13 0

Compile libsigrok and pulseview in windows by msys2

This is the tutorial to build libsigrok and pulseview in windows Download msys https://www.msys2.org/ Open “MSYS2 MinGW x64”, don’t use “MSYS2 MSYS” 3. git clone https://github.com/sigrokproject/sigrok-util.git 4. cd sigrok-utils/cross-compile/msys2 5. ./sigrok-native-msys2 prepare , it will auto install all necessary packages Compile libsigrok 6. git clone https://gitlab.com/quantr/toolchain/libsigrok.git 7. cd libsigrok 8. ./autogen.sh 9. vi configure and…
Read more


2022/02/06 0