原创 linux C守護進程編寫

守護進程(Daemon)是運行在後臺的一種特殊進程。它獨立於控制終端並且週期性地執行某種任務或等待 處理某些發生的事件。守護進程是一種很有用的進程。 Linux的大多數服務器就是用守護進程實現的。比如,Intern

原创 TCP 和 UDP 在socket編程中的區別

一、TCP與UDP的區別  基於連接與無連接   對系統資源的要求(TCP較多,UDP少)   UDP程序結構較簡單   流模式與數據報模式   TCP保證數據正確性,UDP可能丟包   TCP保證數據順序,UDP不保證   部分滿足

原创 程序、進程、線程區別與聯繫

定義:   一 程序只是一組指令的有序集合,   二 進程是具有一定獨立功能的程序關於某個數據集合上的一次運行活動,是系統進行資源分配和調度的一個獨立單位;   三 線程是進程的一個實體,是CPU調度和分派的基本單位,它是比進程更小的能獨

原创 Linux下C語言開發之Makefile創建

Linux下C語言開發之Makefile創建 轉載地址:http://waynerqiu.com/7/185.html#a2

原创 sockaddr與sockaddr_in 在網絡編程中的使用

struct sockaddr {     unsigned short sa_family;     char sa_data[14]; }; 此數據結構用做bind、connect、recvfrom、sendto等函數的參數,指明

原创 automake,autoconf使用詳解

轉載地址:http://www.laruence.com/2009/11/18/1154.html 作爲Linux下的程序開發人員,大家一定都遇到過Makefile,用make命令來編譯自己寫的程序確實是很方便.一般情況下,大家都是手工寫

原创 Linux下system () 函數詳解簡介

 (執行shell 命令)   相關函數   fork,execve,waitpid,popen   表頭文件   #include<stdlib.h>   定義函數   int system(const char

原创 關於malloc內存分配及查詢實際內存方法

  今天在用malloc分配內存時,想查看一下實際分配後的內存大小,一開始找到了microsoft的方法_msize,後來發現linux下沒有相關的方法。不過最終找到了 malloc_usable_size         這個函數的用法

原创 gdb調試時出現Missing separate debuginfos

        在用gdb調試出現錯誤:Missing separate debuginfos, use: debuginfo-install glibc-2.12-1.107.el6.i686 解決方法: 1、編輯/創建文件vi /e

原创 子進程和線程的區別

1、相同點: (a)二者都具有ID,一組寄存器,狀態,優先級以及所要遵循的調度策略。 (b) 每個進程都有一個進程控制塊,線程也擁有一個線程控制塊。 (c) 線程和子進程共享父進程中的資源;線程和子進程獨立於它們的父進程,競爭使用處理器

原创 fork與vfork的區別

1.vfork保證子進程先運行,在它調用exec或exit之後父進程纔可能被調度運行。如果在調用這兩個函數之前子進程依賴於父進程的進一步動作,則會導

原创 Linux C 多線程執行順序問題

轉載:http://blog.csdn.net/harry_lyc/article/details/6055734 1:多線程設計通常是比較麻煩的,因爲它牽涉到,線程間的同步、和執行順序問題。在用戶沒有設定線程間的調度策略時,系統

原创 徹底搞定C指針-函數名與函數指針

轉載自:http://blog.pfan.cn/whyhappy/6030.html  函數名與函數指針 一 通常的函數調用    一個通常的函數調用的例子://自行包含頭文件void MyFun(int x);    //此處的申明也

原创 地鐵當月打折後總費用計算公式分享

#include<stdio.h> int main(int argc, char * argv[]){ printf("地鐵月票總價計算:\n"); int day_num = 22;

原创 MySql 按某一字段分組,同時取每組的前三行數據

-- 按gid分組後,查詢col2的前三名 -- 方法一 SELECT a.* FROM t2 a LEFT JOIN t2 b ON a.gid=b.gid AND a.col2<=b.col2 GROUP BY a.id,a.g