原创 給linux添加PATH環境變量

今天在/home/kaito/kaito/kkk目錄下謝了一個kaito.c編譯出來的kaito可執行文件 爲了使這個課執行文件在任何目錄下都可以使用,就像使ls那樣,我需要添加環境變量 首先到/etc/目錄下打開profile

原创 printf的學習

首先從網上找到了glibc的標準庫的內容,找到了裏面的printf.c的函數實現 int __printf (const char *format, ...) {   va_list arg;   int done;   va

原创 啓動Orange's的最簡單OS

其實更準確的是山區引導程序 書上的代碼是 org 07c00h ; 告訴編譯器程序加載到7c00處 mov ax, cs mov ds, ax mov es, ax call DispStr ; 調用顯示字符串例程 jmp $

原创 這是關於Makefile的基礎學習

http://pan.baidu.com/s/1bo6sx91

原创 ELF Format

原创 linux 下 /bin /sbin 的區別

原文地址:linux 下 /bin /sbin 的區別作者:Blossom/bin,/sbin,/usr/bin,/usr/sbin區別 /  : this is root directory                root 用

原创 linux進程間通信-------消息隊列

消息隊列屬於IPC 兩個進程間要通過消息隊列進行通信,比如A通過消息隊列給B傳送一個消息。首先A要建立一個消息隊列,然後A往該消息隊列裏面發送消息(由一個有特殊形式的結構體構成,包括數據類型和數據內容),當不需要使用這個消息隊列

原创 ./build: line 53:&nbsp…

1.編譯QT4.4.3的時候,出現如下問題: Bootstrap QBuild: .. FAIL In file included from ../../../qt-extended-4.4.3/qbuild/src/main.

原创 linux進程間通信-------共享內存

Linux系統中的兩個進程可以通過共享內存的方式來進行通信,屬於IPC通信,也就意味着和鍵值有關。。。 首先通過某個進程創建一片共享內存,創建的這片共享內存會返回一個描述符,這樣其它的進程也可以使用這片內存。要使用共享內存的進程都必

原创 linux網絡通信-----TCP協議

首先要了解TCP的通信原理 在網絡通信中,我們往往會用到不同的網絡協議,有TCP,UDP,ICMP,IP,IGMP... 爲了我們使用網絡通信方便,Linux採用socket(套接字)來連接不同協議的接口,就相當於是在中間加入

原创 review makefile

今天重新複習了makefile 關於makefile,就是一系列規則,用來規定對文件編譯,連接,彙編的規則 先說一下,在gcc後面 -o表示對生成的文件取另外一個名字 -c表示編譯不連接 -C表示進入一個目錄 首先,在一個

原创 ubuntu下,ARM_tools 的安裝

http://www.linuxidc.com/Linux/2013-06/85902.htm

原创 linux多線程程序

這裏是多線程,而不是多進程。我們用fork函數可以創建子進程,創建的子進程是和源程序完全一樣的,但是有自己的堆棧,代碼段,數據段,BSS端,而且當源進程關閉的時候,創建的新進程不會關閉,就相當於是複製出完全一樣的兩個程序在運行。

原创 Vsprintf簡介--附實現源碼

原文地址:Vsprintf簡介--附實現源碼作者:佳麗恐龍 vsprintf      #include <stdarg.h>   char buffer[80];   int vspf(char *fmt, ...)   {  

原创 併發式TCP服務器的設計

在之前的TCP服務器設計時,採用的是循環接收並處理客戶機的請求的輪詢方式,這樣的效率太低,因爲當多個客戶機同時向服務器發出請求時,就會導致後面來的客戶機一直停滯在那裏,直到服務器處理完前一個客戶機的請求之後纔會處理下一個服務器的請