原创 對socket通信的理解

       socket是“插座”的意思,兩個進程之間通過socket來進行通信可以用手機來比喻,一般都是客戶端向服務器發出訪問請求,則客戶端類比爲撥電話的人,而服務器類比爲接電話的人。兩個用戶要對話首先雙方都要有一部手機,相當於雙方用

原创 對模擬登陸代碼的理解

<span style="white-space:pre"> </span>#include <stdio.h> #include <string.h> int main() { char buf[10] = {}; int nu

原创 UNIX/LINUX C總結

Unix/linux  C(uc)與標準C語言最大的區別在於,標準C只是一種編程語言,而在此基礎上還依賴於具體的操作系統,脫離了unix/linux系統的uc在其他地方可能不被識別。 (1)Unix/Linux系統的基本概述 用gcc將源

原创 對fork,vfork 與exec的一些個人見解

轉載來源http://blog.chinaunix.net/uid-20528014-id-4068931.html 作者:[email protected] 博客:fireaxe.blog.chinaunix.net

原创 深入理解進程間通信之消息隊列,個人總結key值與id

個人總結key值與id:id就是指每個消息隊列的標記值,而key值就是表示如何找到這個消息隊列,對於一個準備發送消息的進程,通過ftok()函數,可以將指定的文件加上自定義的值一般是項目ID作爲key值,創建一個消息隊列,而在另一個準備

原创 ubuntu中安裝tftp服務器

tftp服務器是簡單版的ftp,可以實現服務器和客戶端之間的簡單文件傳輸,包括上傳下載。 網上版本雜亂,此爲親測可用。 1.sudo -i        設置爲超級用戶模式,否則之後每個命令前都要加sudo 2.安裝包  apt-get

原创 在筆記本電腦上 ARM開發板和ubuntu的互相ping

折磨了兩天終於弄好了 如果有問題把防火牆,殺毒軟件關閉,ubuntu裏用ufw disable關閉防火牆 首先相互ping一定是在統一網段內的,這裏的問題在於筆記本電腦只有一個網口,而這個網口一定是與開發板通過網線互連的,筆記本開着無線網

原创 Mr. Process的一生-Linux內核的社會視角 (1)調度

偶遇奇文! 轉載地址:http://www.manio.org/cn/scheduling-of-linux-view-of-society/ Written by manio (manioster{at)gmail.com)

原创 記錄一些認爲不錯的數據結構程序算法

逆轉鏈表: #include<stdio.h> #include<stdlib.h> typedef struct nod { int data; struct nod* next; }nod; typedef struct lis

原创 linux和windows下的“回車符”和“換行符”

轉載來源:http://blog.sina.com.cn/s/blog_6cef0cb50100ml2x.html 經常要對windows/linux下文本文件轉換下 dos2unix 他們間的區別其實是個回車換行的問題 先來段歷史

原创 C中引用重名的全局變量

<pre name="code" class="cpp">#include<stdio.h> int a = 10; int main(){ int a = 20; printf("%d\n", a); return 0; } a

原创 對靜態庫,共享庫,動態加載庫的理解

轉載來源:http://blog.sina.com.cn/s/blog_8f3985400100uw5k.html 在上面原文基礎上整理了一下,主要突出了重點內容。         庫文件一般就是編譯好的二進制文件,用於在鏈接階段同目

原创 socket Bind error:Address already in use

     一:本地通信:unix domain socket 與網絡socket編程最大的不同在於地址格式不同,用結構體socketaddr_un表示,網絡地址是由ip加端口號決定,而domain socket的地址是一個socket類型

原创 Linux makefile 教程

轉載來源 http://blog.csdn.net/liang13664759/article/details/1771246 最近在學習Linux下的C編程,買了一本叫《Linux環境下的C編程指南》讀到makefile就越看越

原创 交叉編譯器安裝步驟

 安裝步驟:arm-2009q3.tar.bz2           1)cd/home/tarena/esd1603           2) cp/mnt/hgfs/arm/env/arm-2009q3.tar.bz2 ./