原创 Linux下命令與文件的查詢

提綱:本文簡單介紹了幾個在Linux下查詢命令與文件指令,包括which、whereis、locate、find四個指令。 一、爲什麼要有這些查找指令? 通過對Linux系統的簡單瞭解,我們都知道Linux系統始終遵循的一個思

原创 vim的簡單配置和插件安裝

提綱:本文簡單闡述了一下CentOS6.5下vim的簡單配置和插件的安裝步驟。 一、爲什麼要配置vim 作爲一個初識Linux的菜鳥,第一次打開vim準備編寫一個小程序來練練手,卻被它的格式打敗了,真是彆扭至極,因此就自己嘗試着

原创 Linux的文件與目錄權限

一、背景知識 1、Linux是一個多用戶、多任務系統,因此常常有個用戶同時使用一臺主機來進行工作,爲了讓各個用戶具有較保密的文件數據,就需要有文件的權限管理。 2、Linux系統文件有三個身份 所有者(owner) 用戶組

原创 初識Linux下的進程

一、回顧Linux體系結構 通過之前對Linux系統的簡單接觸,我們對Linux有了簡單的瞭解,請允許我盜圖進行說明 簡單的來說,Linux體系結構可以描述爲 1、操作系統 (1)操作系統其實也是一組程序,這組程序

原创 進程基本概念

一、題外話 說到進程這個概念,還是以前上機的時候,每當VS卡得運行不了的時候,老師就會讓我們打開任務管理器,在進程那個窗口下,選中VS,然後結束掉這個進程,如下圖所示: 那時還不懂什麼是進程,但是能猜到大概的意思應該就是一

原创 線程安全和可重入函數

一、線程安全 1、什麼是線程安全? 如果一個進程中有多個線程在同時運行,這些線程可能會同時運行同一段代碼。如果每次運行結果和單線程運行的結果是一樣的,而且其他的變量的值也和預期的是一樣的,就表示線程是安全的。 線程安全問題是

原创 實現一個簡單的進度條

提綱:本文主要說明了Linux系統和Windows系統下回車和換行的區別,以及Linux下緩衝區的問題,最後運用這兩點知識實現一個簡單的進度條。 一、關於回車和換行 不同操作系統下的回車和換行 1、Windows操作系統下

原创 殭屍進程和孤兒進程

一、概念的引入 在Linux環境中,子進程是父進程通過fork函數創建的,子進程和父進程相互獨立,子進程和父進程的運行是異步的,當一個進程因爲某種原因終止時,它的父進程需要調用wait()或者waitpid()系統調用取得子進程

原创 信號基本概念

一、信號的基本概念 通過一個普遍例子來引入信號這個基本概念 1、自己寫一個前臺進程,在client.c文件中寫一個程序,然後運行該程序 2、用Ctrl+c組合鍵來使該進程中斷 3、分析一下該中斷的過程 (1)用戶

原创 守護進程

一,守護進程的基本概念 守護進程又名精靈進程,該進程是一種運行在後臺的特殊進程,它獨立於控制終端並週期性的執行某種任務或等待處理某些發生的事件。 在理解守護進程之前,需要先了解一些基礎知識,即進程組、作業、會話以及終端。 二

原创 atexit函數

一、什麼是atexit函數? 1、頭文件 stdlib.h 2、函數功能 登記進程中的函數 3、atexit函數的使用 代碼如下: 改程序的運行結果如下: 由上圖可知,程序每被登記一次就被調用一次並且調

原创 STL一級空間配置器

提綱:本文主要分析STL一級空間配置器的源代碼並模擬實現一級空間配置器 一、什麼是STL STL(standard Template Library,標準模板庫),是算法和一些組件的結合,STL有六大組件,彼此可以組合套用,六

原创 C語言的詞法規則

提綱:本文主要介紹了C語言中的詞法規則,包括字符、註釋、接續符、標識符 一、字符 1、字符集都包括什麼? 標準規定字符集包括英語所有的大寫字母和小寫字母、數字0~9、以及! ” # % ’ * + , -

原创

一、堆的初始化 1、堆的概念 堆實際上是一種完全二叉樹,堆可分爲大堆和小堆。大堆就是左右孩子的值都小於其父節點的值,根節點的值最大;小堆就是左右孩子的值都小於其父節點的值,根節點的值最小。 2、建堆 第一步:先給出一個數組

原创 運行C程序的步驟

提綱:這篇文章介紹了一個編輯好的C程序是如何在集成開發環境中運行的,其中簡介了編譯、鏈接、執行等步驟 一、背景知識 C語言編寫的程序是源程序,計算機不能直接識別和執行高級語言所寫的指令,必須用編譯器把C源程序翻譯成二進制形式的目