iT邦幫忙

module相關文章
共有 64 則文章
鐵人賽 開發技術 DAY 4
Linux kernel模組的開發 系列 第 4

技術 編譯 Linux kernel module

前篇介紹的 hello-1.c 需要進行編譯成 kernel module 之後,才能夠載入執行,而編譯 kernel module 跟編譯一般程式有很大的不同...

鐵人賽 開發技術 DAY 18
Linux kernel模組的開發 系列 第 18

技術 寫入與讀取 /proc 檔案

上回介紹如何建立並從 /proc 檔案系統中讀取資料,這次來介紹如何寫入到自建的 /proc 檔案中。讀跟寫的基本動作一樣,都是令讀或寫的動作去執行對應的函數。...

鐵人賽 開發技術 DAY 26
Linux kernel模組的開發 系列 第 26

技術 Blocking 與 Non-blocking I/O

允許 sleep/awaken 動作的 process 稱之為 blocking I/O,反之不允許 sleep 動作的稱之為 non-blocking I/O...

鐵人賽 開發技術 DAY 23
Linux kernel模組的開發 系列 第 23

技術 IOCTL 範例

因為之前介紹的網站 (http://www.tldp.org/LDP/lkmpg/2.6/html/x892.html) 上所提供的例子有錯,所以在這邊舉另一個...

鐵人賽 Modern Web DAY 12

技術 DAY11-搞懂Python中如何使用以及建立自己的函式庫

import與module 在介紹完方法、類別與裝飾器後要更進一步讓程序可以重複利用的方式就是把之前所教授撰寫出來的方法、類別以及裝飾器打包起來變成函式庫。不過...

鐵人賽 Software Development DAY 7

技術 Day 7 - 一周目- ES6 讓人欲罷不能的語法

回顧 昨天用ESLint,照顧程式碼風格,今天真的要來寫程式了 目標 ES6 有些讓人欲罷不能的語法,它們超超超…常用,不能不會: 模組(module) /...

鐵人賽 開發技術 DAY 16
Linux kernel模組的開發 系列 第 16

技術 /proc 檔案系統

在 Linux 中 /proc 檔案系統可以用來做為 kernel module 傳送訊息給程式之用,也能夠記錄一些 kernel 的狀態,如 /proc/mo...

鐵人賽 開發技術 DAY 7
Linux kernel模組的開發 系列 第 7

技術 送參數到 module 中

當然可以在載入 module 的同時帶參數進去,只不過不是用傳統的 argc/argv 的方式。在 Linux kernel 中,必須藉助 module_par...

鐵人賽 開發技術 DAY 1
Linux kernel模組的開發 系列 第 1

技術 何謂 Linux kernel module

由於工作上的需求接觸到 Linux 系統模組的除錯,進而對 Linux 系統模組的運作產生興趣。藉此機會,想把自己在 Linux kernel module 上...

鐵人賽 開發技術 DAY 9
Linux kernel模組的開發 系列 第 9

技術 function library 與 system call

高階的 function library,是屬於 user mode 的函數,是給程式設計師方便使用的 API。而真正在 kernel 中運行的是低階的 sys...

鐵人賽 Software Development DAY 10
verilog or very lag 系列 第 10

技術 【Day10】模組化及引用模組

模組 在一個 .V 檔案裡面,可以有很多個 module,但是 Top Module 只會有一個,所以檔名必須以 Top Module.v 來命名來辨別 Top...

鐵人賽 開發技術 DAY 2
Linux kernel模組的開發 系列 第 2

技術 Kernel module 載入的程序

在 Linux 中想要知道目前在入的 kernel module 有哪些,可以透過 lsmod 命令來取得,或是輸出 /proc/modules 的內容 ( 其...

鐵人賽 開發技術 DAY 5
Linux kernel模組的開發 系列 第 5

技術 執行 kernel module

編譯完成了 hello-1.ko 之後,接下來我們就要執行他,而在載入之前先透過 modinfo 命令確認一下他的內容: [root@Pomelo-14-61...

鐵人賽 Modern Web DAY 4

技術 Nestjs framework 30天初探:Day04 Modules

Modules Module是帶有@Module()裝飾器的class,@Module()裝飾器提供metadata,Nestjs用其來構建整個程式架構,使...

鐵人賽 開發技術 DAY 3
Linux kernel模組的開發 系列 第 3

技術 Hello World - Linux kernel module.

不免俗的,我們也以 "Hello World" 來作為 kernel module 程式設計的第一個嘗試: /* * hello-1...

鐵人賽 開發技術 DAY 10
Linux kernel模組的開發 系列 第 10

技術 User space 與 kernel space

程式不外乎就是要利用系統的資源去完成他的指令動作,因為 Linux 是多功的作業系統,所以多個程式同時去競爭使用有限的 (如記憶體) 或是同一個 (對同一磁碟進...

鐵人賽 開發技術 DAY 20
Linux kernel模組的開發 系列 第 20

技術 系統呼叫 system call

所以程式與 kernel 進行溝通的動作,最後都是以系統呼叫 (system call) 的方式來進行,譬如程式需要開啟一個檔案、建立一個新的子行程、或是要求一...

鐵人賽 開發技術 DAY 22
Linux kernel模組的開發 系列 第 22

技術 系統呼叫的範例

因為原本參考的資料其例子有錯,所以特此列出來修正,同時說明實作系統呼叫的方法。 原本的例子 (syscall.c): http://www.tldp.org/L...

鐵人賽 開發技術 DAY 6
Linux kernel模組的開發 系列 第 6

技術 不同的 module init 與 cleanup 做法

在 Hello World 的例子中提到,init_module() 與 cleanup_module() 都是 kernel module 中兩個基本需要的函...

鐵人賽 開發技術 DAY 13
Linux kernel模組的開發 系列 第 13

技術 Device driver

最常見的 kernel module 就是 device driver了,也就是各種硬體 (顯示卡、磁碟、serial port 等等) 的驅動程式。像是在 L...

鐵人賽 開發技術 DAY 30
Linux kernel模組的開發 系列 第 30

技術 對稱式多工處理 SMP

單一電腦多 CPU 核心是目前電腦的主流,而多個 CPU 的運作方式可分為不同 CPU 負擔不同工作的非對稱模式 (asymmetrical multi-pro...

鐵人賽 開發技術 DAY 17
Linux kernel模組的開發 系列 第 17

技術 file_operations 資料結構

file_operations 資料結構是 Linux character device 的核心,程式呼叫到 kernel moduel 的動作時,實際上都是引...

鐵人賽 開發技術 DAY 14
Linux kernel模組的開發 系列 第 14

技術 在 kernel 中註冊 driver

在系統中新增一個 driver,即代表是在 kernel 中註冊一個位置,此刻會在 /dev/ 目錄底下建立一個檔案,同時賦予這個 driver 相對的 mao...

鐵人賽 開發技術 DAY 8
Linux kernel模組的開發 系列 第 8

技術 kernel module function 與 symbol

從之前的幾個例子,我們已經領略了 kernel module 是如何的去開始與結束,以及傳遞參數,看到他跟 user mode 程式在這部分有很大的差異。其實在...

鐵人賽 Software Development DAY 15
verilog or very lag 系列 第 15

技術 【Day15】狀態機的撰寫

什麼是狀態機呢? 狀態機,其實是有限狀態機(finite-state machine(FSM))的簡稱,字面上來看可以知道它是有有限個狀態,並且可以按照著特定的...

鐵人賽 Modern Web DAY 17

技術 Day 17:活用第三方的 React Native Module

前言 在使用 React Native 的此時此刻,我們就已經站在巨人的肩膀上了。不過有時候官方並不一定有提供所有需要的功能,基於我們不該有勇無謀的重造輪子,這...

鐵人賽 開發技術 DAY 27
Linux kernel模組的開發 系列 第 27

技術 輸出訊息到當下 tty 的範例

tty (Teletype) 指的是跟系統溝通的輸出入介面,它可以是連接主機的 terminal (螢幕 + 鍵盤)、X-Window,或是網路連結的 ssh/...

鐵人賽 開發技術 DAY 24
Linux kernel模組的開發 系列 第 24

技術 Process sleep 的注意事項

當 driver 無法當下回應 user space 的動作要求時,譬如說設備正在忙碌,或者是 buffer 滿了暫時無法寫入等等,driver 都必須讓 pr...

鐵人賽 開發技術 DAY 15
Linux kernel模組的開發 系列 第 15

技術 在 kernel 中移除 (反註冊) driver

要移除使用中的 kernel module 應該要設法避免有其他程式正在使用他,因為這將會導致存取不到內容而出錯、或者引用到錯誤的 module 上。 之前採用...

鐵人賽 Modern Web DAY 2

技術 Day_02: 讓 Vite 來開啟你的Vue 微談模組化與演進(上)

Hi Da Gei Ho~ 我是 Winnie , 今天是文章的第二篇,在開始進入主題 Vite之前,此篇文章將切分上下文 簡單說說 什麼是 模組與模組化 與...