原创 linux設備驅動二(建立和運行模塊)

測試系統準備 使用主流內核,供應商內核可能會修改內核API 在系統中配置好內核樹,2.6版本之前只需要頭文件即可, hello world模塊 應該最少包含module_init module_exit和MODULE_LICE

原创 linux設備驅動一(設備驅動簡介)

用戶的活動通過一套標準化的調用來進行,這些調用與特別的驅動是獨立的; 設備驅動的角色就是將這些調用映射到作用於實際硬件的和設備相關的操作上 機制與策略 機制:提供什麼功能,策略:如何使用這些功能。我的理解:機制應該是提供的最小的基

原创 linux設備驅動三(字符設備驅動)

主設備號和次設備號 主設備號標示設備對應的驅動程序,次設備號用來確定設備文件指向的設備。 現代linux允許多個驅動程序共享主設備號,但是大多數設備仍延用一個主設備號對應一個驅動程序 設備號內部表達 2.6版本中以後的主設備

原创 阿里巴巴大規模應用 Flink 的實戰經驗:常見問題診斷思路

來源: Flink 中文社區 整理:張宋慶(Flink 社區志願者) 校對:李慶(Flink 社區志願者) 摘要:本文由阿里巴巴高級運維工程師楊陽(時溪)分享,主要介紹阿里巴巴常見問題診斷模塊與思路,內容涵蓋以下幾個方面: 常見

原创 爲什麼磁盤裸容量不等於可用容量

爲了方便用戶或應用訪問,磁盤在使用之前都會格式化爲文件系統,例如:ext4、btrfs、xfs等等。 每種文件系統會按照自己特有的方式來組織文件、管理磁盤空間的分配和回收以及保證原子性、這就需要元數據和日誌,必然會導致一些額外的存

原创 go語言編程 要點總結(五)網絡編程

go語言標準庫net包,支持基於IP層、TCP/UDP層及更高層面(HTTP、FTP、SMTP)的網絡操作,基於IP層的稱爲Raw Socket Socket編程 傳統語言的方式: 建立Socket 綁定Socket 監聽 接受連接 接收

原创 go語言編程 要點總結(七)工程管理

go命令行工具 go help 代碼格式化 代碼質量分析與修復 單元測試與性能分析 工程構建 代碼文檔的提取和展示 依賴包管理 執行其他的包含命令,比如6g等 代碼風格 代碼必須是本着寫給人閱讀的原則來編寫,只不過順便給機器執行而已 go

原创 go語言編程 要點總結(二)面向過程編程

變量 變量聲明 var 變量名 變量類型 變量初始化 var v1 int = 10 var v2 = 10 v3 := 10 出現在冒號左側的不應該是被聲明過的變量,而且這種簡短聲明只能出現在函數中 變量賦值 可以採用多重賦值 i, j

原创 rust-lang-study

語法和語義 變量綁定 變量綁定默認是不可變的 let可以使用模式   let (x, y) = (1, 2); 類型推斷   let x: i32 = 5; 變量使用之前必須初始化 變量作用域僅在一個被{}包圍的語句塊中 變量可以

原创 內核調試資料彙總

內核調試資料 http://blog.csdn.net/su_ocean16/article/details/7843533 http://www.longene.org/forum/viewtopic.php?p=11688 h

原创 go語言編程 要點總結(八)開發工具

選擇開發工具 支持語法高亮 支持unicode 支持工程構建 直接執行構建結果 單元測試 支持執行性能測試 支持代碼調試,斷掉和逐行調試 支持文檔提取和展示 集成語言文檔 開源或者免費 最好能夠支持代碼自動完成 gedit linux g

原创 flink訪問達夢數據庫

背景 使用flink消費kafka中事件,計算規則以及維度數據保存在達夢數據庫中。 達夢數據庫 達夢數據庫管理系統是達夢公司推出的具有完全自主知識產權的高性能數據庫管理系統,簡稱DM。 安裝達夢數據庫驅動 將達夢的jdbc驅動安裝

原创 什麼是邊緣觸發和水平觸發

水平觸發(level-triggered,也被稱爲條件觸發)LT: 只要滿足條件,就觸發一個事件(只要有數據沒有被獲取,內核就不斷通知你) 邊緣觸發(edge-triggered)ET: 每當狀態變化時,觸發一個事件 “舉個讀so

原创 go語言編程 要點總結(三)面向對象編程

類型系統 可以給任意類型(包括內置類型,但不包括指針類型)添加相應的方法 type Integer int func (a Integer) Less(b Integer) boo { } 只有在需要修改對象的時候,才必須用指針 func

原创 簡短實用的一些linux運維命令

停止進程 ps aux | grep {{進程名}} | grep -v grep | awk -F " " '{print $2}' | xargs kill -9 全文替換 sed -i "s/RPacket/fsPacke