原创 科普:程序是怎麼執行的

Docker是一個建立在操作系統+編譯器基礎之上的系統,所以瞭解操作系統,編譯器以及程序運行機制對我們理解Docker來說非常重要。本文是一個自己的體會,有很多不精確的地方,目的是希望大家多關注低層,多修煉內功,多讀好書。 一直想

原创 Git 學習第二天

Git 學習第二天 說明: 主要講下工作區、版本庫(stage、master) .git下目錄的解析 在新建一個git庫時,計算機會自動新建一個隱藏的目錄-.git。 文件./git/index實際上是一個包含文件索引的目錄

原创 Python學習雜記1

Python學習雜記 摘要: 1.self 2.zip函數 3.*list/tuple 4.super繼承說明 5.數據庫事務 6.functools模塊 7.* args和**kwargs 8.with語句 self:

原创 CTF訓練

1. 這題,很簡單。就是一個XSS中base64編碼問題; ADwAcwBjAHIAaQBwAHQAPgBhAGwAZQByAHQAKAAiAGsAZQB5ADoALwAlAG4AcwBmAG8AYwB1AHMAWABTAFM

原创 uint8_t / uint16_t / uint32_t /uint64_t 是什麼數據類型 -

uint8_t / uint16_t / uint32_t /uint64_t  是什麼數據類型 在nesc的代碼中,你會看到很多你不認識的數據類型,比如uint8_t等。咋一看,好像是個新的數據類型,不過C語言(nesc是C的擴

原创 Git 學習第一天

Git 學習第一天 說明: git可以說是目前世界上最先進的分佈式版本控制系統。 以前,一直想學。正好最近開學相對比較空,就打算抽點時間學習下。 創建版本庫 首先,選擇一個合適的地方,創建一個空目錄: $ mkdir fir

原创 CSAPP LAB---perflab-handout性能優化

LAB4 1. Naive_rotate 1.1原始代碼分析 /* *naive_rotate - The naive baseline version of rotate */ char naive_rotate_descr[] =

原创 CSAPP DATA LAB1————位運算

計算機組成位運算實驗,寫的比較詳細。 1題目與解答: ./* * bitAnd - x&y using only ~ and | * Example: bitAnd(6, 5) = 4 * Legal ops:

原创 CSAPP LAB---shlab-handout

LAB7 0x00扯淡 首先,感覺CSAPP的實驗蠻好玩的,有助於我理解書上的知識,而且寫一個shell應該蠻有意思的,所以還是把這試驗也做了。(事實一點都不有趣!) 這個實驗內容是實現一個unix下的簡易shell, 需要實現的功能

原创 CSAPP LAB---MALLOC實驗

LAB6   前期準備: 首先,通過tar xvf指令解壓文件。 然後閱讀readme獲悉本次實驗,只需要修改mm.c. 再結合英文文檔,可以得知Lab的要求是讓我們實現類似GNU Libc的malloc和free函數,也就是實現一

原创 nesC語言學習筆記

1.“async”指出這個command或者event可以在有中斷時使用 2.這裏的#ifndef是 //if not defined的簡寫,是宏定義的一種,它是可以根據是否已經定義了一個變量來進行分支選擇。 在下面的代碼中,

原创 CSAPP LAB---Proxy lab

LAB8 0x00基礎說明 這次的Proxy lab 是要求實現一個簡單的web 代理,共有3個部分,第一部分是實現一個單線程代理,接收客戶端請求,連接服務器然後轉發。第二部分是實現併發,爲每一個請求新建一個進程。第三部分是最有趣

原创 CSAPP LAB————二進制炸彈(bomblab)

LAB3 預先準備 首先查看整個bomb.c的代碼,發現整個炸彈組是由6個小炸彈(函數)組成的。整個main函數比較簡單,函數間變量幾乎沒有影響。因此,只需要依次解除6個小炸彈即可。 所以,接下來便開始依次調試各函數。 調試函數1:

原创 快速素數測試

快速素數測試 前提知識 1. 費馬小定理 有一任意正整數N,P爲素數,且N不能被P整除(顯然N和P互質),則有:N^P%P=N(即:N的P次方除以P的餘數是N)。 N^P%P=N=>(N^P-N)%P=0=>(N*(N^(P-1)-1

原创 系統調用和函數調用

系統調用和函數調用 1. 系統調用 a. 什麼是系統調用 系統調用,通俗的講,說的是操作系統提供給用戶程序調用的一組“特殊”接口。用戶程序可以通過這組“特殊”接口來獲得操作系統內核提供的服務,比如用戶可以通過文件系統相關的調用請求