Month: October 2018

  • Python socket OSError: [Errno 105] No buffer space available

    今天在處理 netlink 的時候,使用 Python 當作 user-space 承接來自 kernel-space 訊息的工具。我的情況是大約每 10ms 會由 kernel-space 發起一次 netlink multicast 到 user-space。當在運行 user-space script 的時候,過一陣子會出現這個錯誤: Traceback (most recent call last): File “measure_netlink.py”, line 33, in <module> b = sock.recvfrom(NETLINK_BUF_LENGTH)[0] OSError: [Errno 105] No buffer space available 一陣搜尋後, 其中一個方法是調整 sysctl 的參數,沒用。 修改 net.ipv4.xfrm4_gc_thresh=999999,沒用。 來自 netfilter 的說明: 來自 netfilter 說明:這代表 kernel-side 的…

  • From What I Know of Virtual Memory

    Segmentation 透過 base / limit (size) pair 來管理記憶體 額外增加 growth 1 bit 用來分辨記憶體增長的位置 Size 可變動 各種不同的 Size fitting algorithm Best Fit Worst Fit First Fit Next Fit Buddy Algorithm Paging 劃分固定大小的 Page (Virtual Page) 對應到 Physical Memory 上 透過 Paging Table 管理當前 Paging 對應的狀況 每個 Process 都有各自的 Paging Table External / Internal fragmentation External Fragmentation…

  • 2018-10-12 notes

    今天開行政會議,交大前校長張俊彥辭世,張懋中在開頭講著講著就哭了……接著全體起立默哀。書卷獎被打回票,朝向不給系上自主,由成績直接認定的方式。工會在行政會議上則還是沒有任何席次,只被以如有相關案子則邀請相關人員列席的方式打哈哈。 今天其他時候則是在閱讀 Operating System: Three Easy Pieces,過了兩年回頭再看,發現這個教材裡面許多知識對於面試以及建立作業系統的概念非常的有用。或許是因為過了兩年,這方面的知識也更為充足,所以最近許多以前看過的書籍重新翻閱的時候,不免都發出讚嘆,當時的我以為沒有寫清楚,但其實都已經在書上講過了。翻閱的同時也找出了一些錯誤,回信給作者 Ramzi 老師後說後續會做修正,並且在 errata 的部分標上我的名字了! 晚上隨手翻了一下 Line shop,發現有個回饋 10% Line point 的活動,就買了椰子汁、蔬果汁還有餅乾來吃。上次則是果乾跟肉乾。 今天沒有做任何有關專案的事情。

  • 2018-10-10 notes

    放假!終於有時間可以騎車。出發之前幫車子的鏈條上油,用的是 Motul C4 鍊條油,是用塗抹的方式上油,前面的蓋子因為有點問題,要擠出來的時候脫落,結果一整坨油就這樣噴出來……只能到研三餐廳的廁所洗手處理。一樣是 2 小時的路線,途中有一組男女被警察擊落,反正車牌後面也掛布條,被擊落剛好。龍鎮的西瓜汁不知道是不是因為西瓜產季過了,好幾次都沒開了。回到學校進到實驗室,重頭看 802.11v 跟 802.1AS 的部分,還在想要怎麼把它實作出來。 Reading 802.11v (timing measurment) & 802.1AS, trying to implement it on ath9k  

  • 2018-10-09 notes

    今天八點就醒了,賴了一個小時候出門吃早餐。應該是因為昨天比較早睡的關係。天氣不像前兩天那樣冷,所以只穿短袖就出去了。中午開法規會,第三案討論最久,是由交大工會提出,希望讓約用/計畫人員也能夠加入校務會議的案子,最後成功送出法規會到校務會議討論,大概是最近最讓人振奮的消息吧。交大要成為所謂的「偉大大學」,考量並且納入校園組成份子的聲音是必不可少的一件事情。晚上的時候,整個 Lab 帶去參加 TESOL 的 English Table,老師是越南人,這一個半小時的課程上下來還不錯。吃個晚餐回來就是測測數據了。 IRTT for Android (v1.1, update with server/client mode w/ command line options) Measuring data on 802.11n/20MHz/MCS/stations

  • 2018-10-08 notes

    冷…繼續穿長袖。早餐 10 點吃,午餐下午 4 點吃鬆餅,晚餐 6 點半買一盒水果 (芭樂 + 木瓜 (剛剛竟然想不起木瓜的名子……))。 IRTT for Android Measuring data on 802.11n/20MHz/MCS/stations Using C2600 as client for IRTT

  • 2018-10-07 notes

    天氣轉涼,穿起長袖。原本今天要騎車繞一圈預計下午一點回實驗室,但口袋裡面沒有耳塞了,穿好一半的裝備全部脫下來,走去研三旁邊的全家吃早午餐。  修正 ath9k 對於服從 EEPROM region 的問題:見這篇分隔線下  測量 ath9k 20 MHz / 40 MHz different MCS 下,one station without congestion/interference 的 RTT:見 github

  • hostapd: Using DFS channel in AP mode (ath9k)

    今天在設定 hostapd 給 ath9k 的網卡使用時,遇到了這樣的問題: 無法在 AP mode 設定 channel 為 120, 124, 132 首先出現的是 DFS start_dfs_cac() failed, -1,照著這篇 mail 安裝 wireless-regdb 以及 crda 就不會出現問題。 接著出現了這樣的訊息: ➜ hostapd git:(master) ✗ sudo ./hostapd nems.conf Configuration file: nems.conf wlp0s20f0u5: interface state UNINITIALIZED->COUNTRY_UPDATE Channel 120 (primary) not allowed for AP mode wlp0s20f0u5: IEEE 802.11 Configured channel (120) not found from the channel…