Linux:定時器

 引子:使用OK6410 通過 IMU_EV30 採集 ADIS16405 的資料,採集頻率為100Hz,需要10ms的定時器。首先考慮了a POSIX per-process timer,後發現板子負擔輕的時候還行,負擔重了定時很不精確,最後使用PWM定時器解決了問題。現總結一下。1、a POSIX per-process timerinclude <signal.h> //

Linux: 兩個USB網路攝影機的資料擷取問題

 引子:

Linux:串口通訊

以前跟著做過VxWorks的開發,主要通訊方式是串口,因為底層BSP包已經做好了,串口通訊非常簡單。後來接觸Linux,在一塊OK6410上跑Linux串口通訊,才發現原來天真的以為甚是簡單的串口變得如此的不簡單。#include <termios.h>1、串口的操作1.1開啟:fd = open("/dev/ttySAC1", O_RDWR | O_NOCTTY | O_NDELAY);              O_RDWR 讀寫方式開啟;             

Linux:驅動程式直接編譯到核心(源自國嵌的視頻教學)

引子:前面的文章實現了可載入的核心模組,通過這個核心模組實現對PWM定時器的控制和中斷處理常式的註冊。這裡討論一下將核心模組直接編譯進核心的過程,首先聲明來源於國嵌的視頻教學。其實很簡單,第一步把冰箱門開啟...(此處略去200字)正經的第一步:將源檔案代碼 mytimer.c(不知道這麼說規範不,反正就是 .c 檔案)拷到Linux原始碼目錄下的 drivers 下的某個目錄下 如:drivers/char第二步:修改drivers/char 中的

【Linux學習】GDB調試器基本命令必知必會(一)

本文介紹Linux下GDB調試器常用的基本命令。測試均在Ubuntu12.10下完成。先看看GDB調試的:對應的原始碼://插入排序,GDB調試測試代碼#include <stdio.h>int x[10],//存放輸入資料 y[10],//工作空間數組 num_inputs,//輸入數組長度 num_y = 0;//y中當前元素個數//函數//功能:從參數中提取輸入資料void get_args(int ac,char **av){

【Linux入門學習之】Linux關機命令總結

Linux關機應該採用正確的關機方法。Windows由於是單使用者、“假多”任務的情況,所以即使你的電腦關機,也不會對別人造成影響。不過在Linux中,由於每個程式都是在後台執行的,因此,在你看不到的螢幕背後可能有很多人同時在你的主機上工作。而且,若不順利關機可能會造成檔案系統的損毀。所以,正常情況下,要關機時需要注意下面幾件事情:(1)查看系統的使用狀態。要看目前有誰線上,可以用who命令。要看網路的聯機狀態,可以用netstat -a命令。要看後台執行那個的程式可以執行ps-aux命令。(2

【Linux學習】pthread_create主線程與建立的新線程之間退出關係

我們在一個線程中經常會建立另外的新線程,如果主線程退出,會不會影響它所建立的新線程呢?下面就來討論一下。 1、  主線程等待新線程先結束退出,主線程後退出。正常執行。執行個體代碼:#include "apue.h"#include <pthread.h>pthread_t ntid;//線程IDvoid printids(const char *s){ pid_t pid; pthread_t tid; pid = getpid();

【Linux】生產者消費者編程實現-線程池+訊號量

生產者消費者編程實現,採用了線程池以及訊號量技術。線程的概念就不多說,首先說一下多線程的好處:多線程技術主要解決處理器單元內多個線程執行的問題,它可以顯著減少處理器單元的閑置時間,增加處理器單元的吞吐能力。 那麼為什麼又需要線程池呢? 我們知道應用程式建立一個對象,然後銷毀對象是很耗費資源的。建立線程,銷毀線程,也是如此。因此,我們就預先產生一些線程,等到我們使用的時候在進行調度,於是,一些"池化資源"技術就這樣的產生了。一般一個簡單線程池至少包含下列組成部分。1)        線程池管理器(

【Linux入門學習之】grep命令詳解

grep是通用Regex解析器(General Regular Expression Parser)的縮寫。一、grep命令的功能是分析一行資訊,若其中有我們所需要的資訊,就將其拿出來。需要注意的是它以整行為單位進行資料的選取。文法:grep [-acinv] [--color=auto] '要尋找的字串' filename-a:將binary檔案以text檔案的方式尋找資料-c:計算找到尋找字串的次數-i:忽略大小寫不同-n:輸出行號-v:反向選擇,顯示出沒有尋找字串的內容的行--color-

【Linux入門學習之】資料流重新導向

Linux中資料流重新導向的意思是將某個命令執行後應該要出現在螢幕上的資料轉送到其他地方,例如檔案或裝置之類。一、stadard output與standard error output首先介紹一下命令執行過程的資料轉送情況:圖中的standard output和standard error

【Linux入門學習之】ubuntu10.04 ruijie配置上網(用mentohust)

今天終於把Linux下ubuntu用ruijie鋭捷連網給搞定了,而且十分穩定,不掉線!爽!配置起來也很快。首先說一下,我的電腦是在Windows7上用wubi安裝的ubuntu雙系統,版本是10.04.32位。下面我就介紹一下我的配置過程:1、配置好ubuntu10.04的網路資訊。點擊系統-喜好設定-網路連接,然後編輯eth0的具體資訊:選擇IPv4settings功能表項目,Method選擇manual,然後填好IP地址、子網路遮罩、網關和DNS。2、下載並安裝mentohust。:men

【Linux入門學習之】Linux串連檔案:硬串連和軟串連

Linux下面的串連檔案有2種:一種是類似與Windows的捷徑功能的檔案,可以讓我們快速串連到目標檔案,稱為符號串連(symbolic link);另一種則是通過檔案系統的inode串連產生新檔案名稱,而不是產生新檔案,稱為硬串連(hard link)。一、hard

ifCMS:從windows/apache轉到linux/nginx

Note: ifCMS(originally named as ycms, but was found confliction with another one, so renamed to ifCMS, which simply means iefreer's personal CMS) it is targetted to be a high performance-full functionality stack ecommerce cms on top of yii framework,

Linux核心動態載入模組

Linux核心動態載入模組  一、安裝核心模組:一般步驟:(1) 在/usr/src/linux/下運行makemenuconfig把需要編譯成模組的項打上(M),儲存並退出。(2) 運行make modules,這一步將在/usr/src/linux/下產生*.o或*.ko檔案。(3) 運行make modeules_install來安裝,這步會把產生的.o或ko檔案拷貝到/lib/modules/`uname-r`/下。 如果你只要編譯某一個或幾個模組,就可以用下面這個快速的方法:(1)

實驗一:嵌入式Linux之我行——Linux-2.6.30.4在2440上的移植之核心

http://blogold.chinaunix.net/u3/101649/showart.php?id=2073912原部落格內容嵌入式Linux之我行,主要講述和總結了本人在學習嵌入式linux中的每個步驟。一為總結經驗,二希望能給想入門嵌入式Linux的朋友提供方便。如有錯誤之處,謝請指正。· 共用資源,歡迎轉載:http://hbhuanggang.cublog.cn一、移植環境· 主  機:VMWare--Fedora

mini2440開發-核心抑制-嵌入式Linux之我行——Linux-2.6.30.4在2440上的移植之核心

http://blogold.chinaunix.net/u3/101649/showart.php?id=2073912 按以上步驟得出結論如下:Copy linux kernel from 0x00060000 to 0x30008000, size = 0x00500000 ... donezImage magic = 0x016f2818Setup linux parameters at 0x30000100linux command line is: "noinitrd

配置Linux做網關

轉載: http://blog.csdn.net/zhangyang0402/archive/2010/06/25/5695050.aspx 一、網路拓撲  二、配置網路 1.A,GW1,GW2,B的網路設定 A:   eth0:       IPADDR :192.168.1.2       NETMASK:255.255.255.0       GATEWAY:192.168.1.1 GW1:   eth0:       IPADDR :172.16.113.173      

Linux Kernel 2:使用者空間的初始化

上篇我們知道,kernel初始化後將啟動init進程,那麼這個進程將幹些什麼呢?除此之外,kernel還需要做些什麼事情呢?(想想檔案系統、根存放裝置是在什麼時候初始化的呢?)先從檔案系統初始化說起。以前一直不明白,有了kernel為何還需要一個檔案系統?經過反覆琢磨,明白一個道理,kernel載入到記憶體後,kernel運行起來是沒有問題的,但是如果沒有Root

linux kernel系列四:嵌入式系統中的檔案系統以及MTD

本節介紹File System和MTD技術一 FS熟知的FS有ext2,3,4.但是這些都是針對磁碟裝置的。而ES中一般的存放裝置為Flash,由於Flash的特殊性:Flash儲存按照Block size進行劃分,而一個BLS一般有幾十K。(對比磁碟的一個簇才512個位元組)。這麼大的BLS有什麼壞處呢?很明顯,擦除一個BL就需要花費很長的時間了。 另外,FLASH操作,一次必須針對一個BL,也就是如果我想修改一個位元組的話,也必須先擦掉128K。這不是想死嗎?

Linux Kernel系列三:Kernel編譯和連結中的linker script文法詳解

先要講講這個問題是怎麼來的。(咱們在分析一個技術的時候,先要考慮它是想解決什麼問題,或者學習新知識的時候,要清楚這個知識的目的是什麼)。我在編譯核心的時候,發現arch/arm/kernel目錄下有一個這樣的檔案:vmlinux.lds.S。第一眼看上去,想想是不是彙編檔案呢?開啟一看,好像不是。那它是幹嘛的?而且前面已經說過,make V=1的時候,發現這個檔案的用處在ld命令中,即ld -T

總頁數: 4065 1 .... 382 383 384 385 386 .... 4065 Go to: 前往
Tags Index:

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。