linux 011之time h標頭檔案

2021-07-31 14:52:09 字數 1305 閱讀 1696

#ifndef _time_h

#define _time_h

#ifndef _time_h

#define _time_h

typedef long time_t;//從gmt2023年1月1日開始以秒計數的時間

#endif

#ifndef _size_t

#define _size_t

typedef unsigned int size_t;

#endif

#define clocks_per_sec 100 //系統時鐘滴答數,100hz

typedef long clock_t; //從程序開始系統經過的時鐘滴答數

struct tm; /*

*去頂處理使用時間,返回程式所使用處理器時間的近似值

*/clock_t clock(void);

/**取時間(秒).返回從1970.1.1:0:0:0開始的秒數

*/time_t time(time_t *tp);

/**計算時間差.返回時間time2和time1之間經過的秒數

*/double difftime(time_t time2,time_t time1);

/**將tm結構表示的時間轉換成日曆時間

*/time_t mktime(struct tm*tp);

/**將tm結構表示的時間轉換成乙個字串,返回該串的指標

*/char * asctime(const struct tm *tp);

/**將日曆時間轉換成乙個字串形式,如:

*wd jun 30 21:48:12:1983

*/char * ctime(const time_t *tp);

/**將日曆時間轉換成tm結構表示的utc時間

*/struct tm* gmtime(const time_t *tp);

/**將日曆時間轉換成tm結構表示的指定時間區的時間

*/struct tm* localtime(const time_t *tp);

/**將tm結構表示的時間利用格式fmt轉換成最大長度為smax

*的字串並將結果儲存在s中

*/size_t strftime(char* s,size_t smax,const char* fmt,

const struct tm* tp);

/**初始化時間轉換資訊,使用環境變數tz,對zname變數進行初始化

*在與時間區相關的時間轉換函式中將自動呼叫該函式

*/void tzset(void);

#endif

linux 0 11 之訊號管理

1 概述 在 unix 系統中,訊號是一種 軟體中斷 處理機制。有許多較為複雜的程式會使用到訊號。訊號機制提供了一種處理非同步事件的方法。在核心 中通常使用乙個無符號長整數 32位 中的位元位來表示各種不同的訊號,因此最多可表示 32個不同的訊號。2 程序對訊號的三種處理或操作方式 a 忽略該訊號。...

linux 011之庫函式wait c

define library include include 等待呼叫標頭檔案.定義了系統呼叫wait和waitpid及相關常數符號 等待程序終止系統呼叫函式 下面巨集函式對應 pid t waitpid pid t pid,int wait stat,int options 引數 pid 等待被終...

Linux 0 11 核心筆記

1 任務0的堆疊問題 一直不明白schedule.c裡的task union的stack和user stack是什麼關係,head.s裡就設定了esp指向user stack,卻一直沒有用到task union,直到看到init task才明白,從進入保護模式到跳轉進使用者態都是用的user sta...