摘要:
由於一個項目中flask只能創建一個對象,而其尋找模板的默認文件夾是在當前文件夾的templates文件夾下。 所以建議將所有的要使用的模板都放在templates文件夾下面。 阅读全文
摘要:
How to write MakeFile 1. 程序的編譯. 程序在編譯過程中,編譯器只檢測程序語法,函數和變量是否被聲明。而函數是否被實現的檢測是在鏈接的過程中檢測的。 2. 一個makefile的示例: 從這個makefile的示例中我們可以看出makefile的工作原理。可以將其想象成一個棧 阅读全文
摘要:
2020年一段令我迷惑的代码 这段代码在gcc中可以编译成功,但是在g++中不行。 阅读全文
摘要:
近期由于经常需要给别人发送邮件,每次都要打开QQ邮箱觉得非常麻烦。想到Linux终端可以自定义命令,加上python可以实现邮件发送功能,于是自己写了一个终端send + 文件地址的命令。 首先贴上python发送邮件的代码。 我是通过将邮箱信息写在xml文件里面来读取的,这样方便修改。不用每次都修 阅读全文
摘要:
C語言中的內存對齊操作 在編譯器給變量分配內存時,變量首地址總是變量字節數的倍數。比如在一段64位的地址空間中,總共有8個字節,char類型總是佔用8個字節,可以隨意分配。而int類型佔用4個字節,如果在這段空間中,前面3個字節都被char類型佔據,那麼int類型分配內存並不會緊接著第4個字節分配內 阅读全文
摘要:
計算機的開機啟動過程 1. 當計算機接上電源後,它會先完成加電自檢,然後BIOS會去尋找存儲介質,在盤上尋找引導扇區,如果扇區的結尾是0xAA55的話,計算機就認為這是一個正確的引導扇區。 2. 一個扇區的大小是512B,如果一個0xAA55超過了扇區結尾的話,其大小將超過512B,則也不是一個正確 阅读全文
摘要:
C++ static 用法 1. 靜態存儲區:靜態變量存儲的空間分為DATA段和BBS段。DATA段用於存放已經初始化的靜態變量,BBS段存放未初始化的。BBS段在程序開始執行前會被系統自動置為0。於是完成了靜態變量的初始化。 2. c++的static的內部實現機制要求static變量在程序開始執 阅读全文
摘要:
操作系統3 內存管理(Linux系統的內存管理方法) 9. Linux系統的內存管理方法 Linux採用“按需調頁”算法,支持三層管理策略。由於Intel CPU在硬件級提供了段式存儲管理和二層頁式存儲管理,Linux作為軟件,必須與之兼容。所以Linux實際上放棄了段式存儲管理,將第二層的頁式管理 阅读全文
摘要:
操作系統3 內存管理(請求分段存儲管理) 8.請求分段存儲管理 8.1 請求分段的原理與硬件支持 在段式存儲管理實現的虛擬存儲器上,以段為單位進行換入,換出。相比於請求分頁存儲系統,分段存儲因為段的大小不固定,所以置換算法更加難以實現。請求分段管理的實現需要 段表機制、缺段中斷機制和地址變換機構的支 阅读全文
摘要:
操作系統3 內存管理(頁面置換算法) 7. 頁面置換算法 在上一節講過, 換入換出頁面要根據特定的算法來執行, 這種算法就是頁面置換算法. 不合適的算法可能會使系統發生抖動,所謂抖動即指剛剛換出的頁面又要換回來,換回來不久又要換出去,這樣就導致系統的大部分工作時間都花在了頁面調度上,導致效率不高。 阅读全文