0%

C/C++ localtime

  • #include <time.h>

參數

  • timer - pointer to a time_t object to convert
  • buf - pointer to a struct tm object to store the result
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    struct tm {
    int tm_sec; /* seconds */
    int tm_min; /* minutes */
    int tm_hour; /* hours */
    int tm_mday; /* day of the month */
    int tm_mon; /* month */
    int tm_year; /* year */
    int tm_wday; /* day of the week */
    int tm_yday; /* day in the year */
    int tm_isdst; /* daylight saving time */
    };

    Return value

  • 1)
    • pointer to a static internal tm object on success
    • or null pointer otherwise. The structure may be shared between gmtime, localtime, and ctime and may be overwritten on each invocation.
  • 2-3)
    • copy of the buf pointer
    • or null pointer on error (which may be a runtime constraint violation or a failure to convert the specified time to local calendar time)
      閱讀全文 »

RTC (Real Time Clock)

  • 是指可以像時鐘一樣輸出實際時間的電子設備,一般會是積體電路,因此也稱為時鐘晶片
  • 實時時鐘和定時器訊號(Clock signal)不同,後者只是數位電路中一個表示時間的方波訊號,而且不會以日常使用的時間單位表示。
    閱讀全文 »

C/C++ struct

  • 自訂不同資料型態串在一起

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    struct person_t {
    char *name;
    unsigned age;
    };
    // or
    // typedef struct {
    // char *name;
    // unsigned age;
    // } person_t;

    int main(void)
    {
    struct person_t p = { "Michelle", 37 };
    // or
    // struct person_t p = {
    // .name = "Michelle",
    // .age = 37
    // };


    return 0;
    }
    閱讀全文 »

Data Deduplication

  • 重複數據刪除(英語:data deduplication)是一種節約數據存儲空間的技術
  • 在計算機中存儲了很多重複數據,這些數據占用了大量硬碟空間,利用重複數據刪除技術,可以只存儲一份數據。另外一項節約存儲空間的技術是數據壓縮
    • 數據壓縮技術在比較小的範圍內以比較小的粒度查找重複數據,粒度一般為幾個比特到幾個字節。
    • 重複數據刪除是在比較大的範圍內查找大塊的重複數據,一般重複數據塊尺寸在1KB以上。
  • 重複數據刪除技術被廣泛應用於網絡硬碟、電子郵件、磁碟備份介質設備等。
    • 用戶文件共享可能有許多相同或相似文件的副本。
    • 從 VM 到 VM,虛擬化來賓可能幾乎相同。
    • 備份快照可能每天都有細微的差異。
      閱讀全文 »

C/C++ Time

c

  • <time.h>

clock

  • clock 會在程式開始執行時計時,直接呼叫就能知道已經執行多久
  • clock_t clock(void)
    • 這個函數返回程序啟動以來經過的時鐘滴答數。失敗時,函數返回值-1。
      1
      cout << (double)clock() / CLOCKS_PER_SEC << " S";
    • 由於 clock 回傳的數值是以毫秒為單位,所以會在除上一個 CLOCKS_PER_SEC,這個 CLOCKS_PER_SEC 通常都是 1000
      閱讀全文 »

C/C++ new and declare

  • new int 的用法
  • new int 一維陣列
  • new int 二維陣列
  • new struct 範例
  • new struct 一維陣列範例
閱讀全文 »

HA (High Availability)

  • 高可靠性(High Availability),簡稱為HA,能夠在通信線路或設備產生故障時提供備用方案,從而保證數據通信的暢通,有效增強網絡的可靠性
  • 實現HA功能,用戶需要配置兩台採用完全相同的硬體平台、固件版本,均啟用VR及防病毒功能、安裝防病毒許可證的安全網關,組成HA簇
  • 當一台設備不可用或者不能處理來自客戶端的請求時,該請求會及時轉到另外的可用設備來處理,這樣就保證了網絡通信的不間斷進行,極大地提高了通信的可靠性。
    閱讀全文 »

gRPC

  • RPC 的全名是 remote procedure call,主要是作為電腦和電腦間溝通使用。
    • A 電腦可以呼叫 B 電腦執行某些程式,B 電腦會將結果回傳給 A 電腦,A 電腦在收到回應後會再繼續處理其他任務。
    • RPC 的好處在於,雖然 A 電腦是發送請求去請 B 電腦做事,但其呼叫的方式,就很像是 A 電腦直接在呼叫自己內部的函式一般。
      閱讀全文 »

Disk SMART Test

  • S.M.A.R.T.,全稱為「Self-Monitoring Analysis and Reporting Technology」,即「自我監測、分析及報告技術」,是一種自動的硬碟狀態檢測與預警系統和規範。
  • 通過在硬碟硬體內的檢測指令對硬碟的硬體如磁頭、碟片、馬達、電路的執行情況進行監視、記錄並與廠商所設定的預設安全值進行比較,若監視情況將要或已超出預設安全值的安全範圍,就可以通過主機的監視硬體或軟體自動向使用者作出警告並進行輕微的自動修復,以提前保障硬碟資料的安全。
  • 除一些出廠時間極早的硬碟外,現在大部分硬碟均配備該項技術。
    閱讀全文 »