原创 Linux中閱讀源代碼工具Vim

“工欲善其事,必先利其器” -----《論語》 Linux中閱讀源代碼工具Vim xbw 2009-03-19 很多Linux的軟件開發實際不使用X windows下情況下運行,於是很多圖形化的代碼閱讀軟件都不能用。在這一情況下,可用的

原创 ARM linux啓動的流程

ARM linux啓動的流程 首先,porting linux的時候要規劃內存影像,如小弟的系統有64m SDRAM, 地址從0x 0800 0000 -0x0bff ffff,32m flash,地址從0x0c00 0000-0

原创 Arm linux 內核啓動流程

Arm linux 內核啓動流程 還是從編譯鏈接生成vmlinux的過程來看吧,由一大堆.o文件鏈接而成,第一個就是 kernel/arch/arm/kernel/head-armv.o ,而且我們還看到了 lds鏈接文件kernel/a

原创 開啓Samba服務

OS:Ubuntu 8.04.1 LTS 1、 安裝Samba: #apt-get install samba 2、 創建要共享的文件夾: #mkdir /root/share 3、 備份並編輯smb.conf #cp /etc/sam

原创 Linux中find常見用法示例

Linux中find常見用法示例 ·find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} /; #-print 將查找到的文件輸出到標準輸出 #-exe

原创 Linux下ARM彙編教程

Linux下ARM彙編教程 第一部分 Linux下ARM彙編語法儘管在Linux下使用C或C++編寫程序很方便,但彙編源程序用於系統最基本的初始化,如初始化堆棧指針、設置頁表、操作ARM的協處理器等。初始化完成後就可以跳轉到C代碼執行。需

原创 linux系統2.6內核編譯全過程

linux系統2.6內核編譯全過程! 第一項 Code maturity level options (代碼成熟度選項) 按enter進入後選項如下 Prompt for development and/or incomplete

原创 Linux2.6內核的新特性

序 做一件事情,首先要知道自己在幹什麼,而不是盲目得升級內核,現在升級內核有點氾濫,sigh 首先讓我們先了解一下2.6內核的新特性 一、01.模塊子系統(Module Subsystem)、統一設備模型(Unified Device

原创 start_kernel分析

start_kernel分析 如果以爲到了c代碼可以鬆一口氣的話,就大錯特措了,linux的c也不比彙編好懂多少,相反到掩蓋了彙編的一些和機器相關的部分,有時候更難懂。其實作爲編寫操作系統的c代碼,只不過是彙編的另一種寫法,和機器代碼的聯

原创 S3C2410 vivi閱讀筆記

S3C2410 vivi閱讀筆記 建議讀一讀《嵌入式系統Boot Loader技術內幕》(詹榮開著),google一下就會找到一片。什麼是Bootloader就不再這裏廢話了,看看上面的文章就明瞭了。 Bootloader有很多種,如本文

原创 bootloader技術內幕

本文詳細地介紹了基於嵌入式系統中的 OS 啓動加載程序 ―― Boot Loader 的概念、軟 件設計的主要任務以及結構框架等內容。 一、引言 在專用的嵌入式板子運行 GNU/Linux 系統已經變得越來越流行。一個嵌入式 Linux

原创 Makefile 常用函數表

Makefile  常用函數表 一、字符串處理函數 1.$(subst FROM,TO,TEXT) 函數名稱:字符串替換函數—subst。 函數功能:把字串“TEXT”中的“FROM”字符替換爲“TO”。 返回

原创 busybox的init

busybox的init 除了基本的命令之外,BusyBox還支持init功能,如同其它的init一樣,busybox的init也是完成系統的初始化工作,關機前的工作等等,我們知道在Linux的內核被載入之後,機器就把控制權轉交給內核,l

原创 對.lds連接腳本文件的分析

對.lds連接腳本文件的分析 對於.lds文件,它定義了整個程序編譯之後的連接過程,決定了一個可執行程序的各個段的存儲位置。雖然現在我還沒怎麼用它,但感覺還是挺重要的,有必要了解一下。 先看一下GNU官方網站上對.lds文件形式的完整描述

原创 Linux 嵌入式啓動以及優化

Linux 嵌入式啓動以及優化 以前寫了一篇Linux PC啓動過程的日記,最近項目中,想優化一下啓動過程,減少啓動時間.因此研究了我們項目的啓動全過程. 第一步: BootLoader -- U boot   1 在cpu/arm92