Time of Update: 2018-07-30
yaffs2更新的比較慢,跟不上核心的更新速度.所以只能自己做些修改 first step 剛開始從官網下載下來的直接打補丁後會出現一系列的錯誤.如下: **fs/yaffs2/yaffs_vfs.c: In function 'yaffs_readpage_nolock':fs/yaffs2/yaffs_vfs.c:286:34: error: 'struct file' has no member named 'f_dentry' obj =
Time of Update: 2018-07-30
6467T Vpif的V4L2 linux驅動程式架構 在linux中,使用V4L2架構來管理視頻採集裝置。V4L2架構主要包括兩層:V4L2Device和V4L2 Subdevice,其中V4L2 Device是虛擬裝置,用以管理V4L2 Subdevice,而Subdevice才是真正的物理裝置,例如各種視頻AD晶片和sensor等。
Time of Update: 2018-07-30
Linux V4L2驅動架構解析與開發導引
Time of Update: 2018-07-30
pc : [<bf0000b8] 1.定位代碼崩潰在核心中還是xxx.ko cat /proc/kallsyms >1.txt c0034818 T __kmalloc ... c00082a8 t quiet_kernel /*最開始的是虛擬位址*/ ... bf000000 t $a [cdd] .. 由此可看代碼崩潰在xxx.ko 2.定位崩潰在xxx.ko中的哪個函數
Time of Update: 2018-07-30
1.查看檔案內容 cat [filename] //一次性把檔案的全部內容輸出到終端 more [filename] //通過敲斷行符號方式逐行查看檔案內容,q鍵結束查看 less [filename] //”上下左右”鍵方式查看檔案各部分內容(支援回看),q鍵結束查看 head -n [filename] //查看檔案的前n行內容 tail -n [filename] //查看檔案的最後n行內容 wc [filename] //查看檔案內容行數 2.建立檔案
Time of Update: 2018-07-30
檔案描述符:一個非負整數,是核心開啟檔案表的索引。 每一個進程有自己的檔案描述符表,核心會維護一個開啟檔案表,不同的描述符指向核心的檔案開啟表,並指向I-node表上的檔案實際位置。 linux系統的檔案IO函數(具體使用詳情可以在linux shell中 man -a + 函數名查詢或者在man-online上查詢): fd=open(pathname,flags,mode);
Time of Update: 2018-07-30
動態將核心空間的物理地址和大小傳給使用者空間。本文也示範了核心空間和使用者空間進行通訊可以使用的兩種常用方法:proc檔案系統和mmap共用記憶體。整個核心模組,在模組插入時建立proc檔案,分配記憶體。卸載模組的時候將使用者空間寫入的內容列印出來。以下是核心模組的代碼和使用者空間的測試代碼。 /*This program is used to allocate memory in kerneland pass the physical address to
Time of Update: 2018-07-30
nohup 的使用是十分方便的,只需在要處理的命令前加上 nohup 即可,標準輸出和標準錯誤預設會被重新導向到 nohup.out 檔案中。一般我們可在結尾加上"&"來將命令同時放入後台運行,也可用">filename 2>&1"來更改預設的重新導向檔案名稱。 nohup 樣本 [root@pvcent107 ~]# nohup
Time of Update: 2018-07-30
一、直接建立 1、建立一個使用者 useradd test2 2、設定使用者密碼 passwd test2 3、修改登入後檔案目錄和只允許訪問某一個目錄 修改/etc/ssh/sshd_config 檔案 #Subsystem sftp /usr/libexec/openssh/sftp-server #這行指定使用sftp服務使用系統內建的internal-sftpSubsystem sftp
Time of Update: 2018-07-30
Linux核心態和使用者態共用記憶體 1、mmap系統調用(功能) void* mmap ( void * addr , size_t len , int prot , int flags ,int fd , off_t offset ) 記憶體映射函數mmap, 負責把檔案內容映射到進程的虛擬記憶體空間,
Time of Update: 2018-07-30
一、什麼是檔案鎖定 對於鎖這個字,大家一定不會陌生,因為我們生活中就存在著大量的鎖,它們各個方面發揮著它的作用,現在世界中的鎖的功能都可歸結為一句話,就是阻止某些人做某些事,例如,門鎖就是阻止除了屋主之外的人進入這個房子,你進入不到這個房子,也就不能使用房子裡面的東西。
Time of Update: 2018-07-30
Andrew按:眾所周知,linux中可以採用靈活的多層次的驅動架構來對介面進行統一與抽象,最低層次的驅動總是直接面向硬體的,而最高層次的驅動在linux中被劃分為“面向字元裝置、面向塊裝置、面向網路介面”三大類來進行處理,前兩類驅動在檔案系統中形成類似檔案的“虛擬檔案”,又稱為“節點node”,這些節點擁有不同的名稱代表不同的裝置,在目錄/dev下進行統一管理,系統調用函數如open、close、read等也與普通檔案的操作有相似之處,這種介面的一致性是由VFS(虛擬檔案系統層)抽象完成的。面
Time of Update: 2018-07-30
由使用者空間主動發起的資訊互動 編寫自己的系統調用 目前linux大致提供了兩百多個標準的系統調用,並且允許我們添加自己的系統調用來實現和核心的資訊互動。 編寫驅動程式 read, write, ioctl 使用/proc等檔案系統 使用mmap 由核心空間主動發起的資訊互動 從核心空間調用使用者程式 核心中啟動使用者程式通過execve這個系統調用原型,此時的系統調用發生在核心空間,而一般的系統調用在使用者空間進行。
Time of Update: 2018-07-30
1.建立ftp使用者 groupadd -g 1100 ftpgroup useradd -u 1100 -g ftpgroup -s /sbin/nologin ftpuser 以上建立的ftpuser使用者無法登陸作業系統; 2.安裝vsftp相關包: yum -y install vsftp*
Time of Update: 2018-07-30
在Linux系統中,核心為每一個新建立的檔案分配一個Inode(索引結點),每個檔案都有一個惟一的inode號。 檔案屬性儲存在索引結點裡,在訪問檔案時,索引結點被複製到記憶體中,從而實現檔案的快速存取。 連結是一種在共用檔案和訪問它的使用者的若干目錄項之間建立聯絡的一種方法。 Linux中包括兩種連結: 永久連結(Hard Link) 軟連結(Soft Link) 軟連結又稱為符號連結(Symbolic link)。符號串連相當於Windows下的捷徑。
Time of Update: 2018-07-30
原文地址:http://bbs.chinaunix.net/thread-1940094-1-1.html 多數的 Linux 核心態程式都需要和使用者空間的進程交換資料,但 Linux 核心態無法對傳統的 Linux 進程間同步和通訊的方法提供足夠的支援。本文就總結下常見的ipc, getsockopt/setsockopt mmap netlink/socket
Time of Update: 2018-07-30
譯者註: 最近在看檔案系統相關的,每當讀到inode相關的東西時,書上或者部落格上都會涉及永久連結/軟連結相關的內容,於是今天專門針對永久連結翻譯了幾篇英文,弄懂它。 一、永久連結 本節翻譯自:http://c2.com/cgi/wiki?HardLink 在傳統的UNIX檔案系統中,一個目錄就是一個包含關聯列表的檔案。目錄檔案中的條目是字串形式的檔案名稱及其對應的唯一檔案標識符--
Time of Update: 2018-07-30
問題提出 公司的開發測試伺服器部署在阿里雲, 阿里雲給出的執行個體一般都是只有一個分區, 20G到40G的樣子, 然後再買儲存掛載到其他目錄. 而 home 目錄是在這個 20G 的跟目錄分割下的. 隨著開發人員增多, 根目錄分區很快被大家填滿了. 因為是多地研發, 因此需要一個無感知的給大家的 home 搬家的方案. 基本原理 接到這個任務, 首先想到的就是 bind mount 方式: mount --bind /some/where /else/where
Time of Update: 2018-07-30
作業系統:ubuntu 11.04 交叉編譯工具鏈及其路徑:arm-none-linux-gnueabi /usr/local/arm/4.3.2 源碼:qt-everywhere-opensource-src-4.7.3.tar.gz 移植過程: 1 下載源碼,解壓,進入解壓後檔案夾: #tar zxvf qt-everywhere-opensource-src-4.7.3.tar.gz
Time of Update: 2018-07-30
3-1:使用LInx專有的reboot系統調用重啟系統時,必須將第二個參數magic2定義為一組magic號(例如:LINNUX_REBOOT_MAGIC2)。這些號有何意義。(將magic號轉換為十六進位數,對解題會有所協助。) 參考:Linux Easter Egg - Hidden Dates in the Linux Kernel 具體如下: In order to prevent the reboot() system call being called