原创 JAVA 8 之lambda表達式

summary:    A lambda expression can be understand as a kind of anonymous function: it does'nt have a name, but it has a

原创 servlet settings

一、由於Servlet是一個Java文件,不像JSP那樣直接放在Web目錄下就能獲得URL請求訪問地址。Servlet必須在Web的配置文件/WEB-INF/web.xml中進行配置和映射才能響應HTTP請求。Servlet的配置分爲聲明

原创 第三章:挖掘SimpleSection.o

     1.查看.o目標文件用objdump 命令, 參數“-h"就是把ELF文件的各個段的基本信息打印出來。也可以使用-X打印更多的信息。 段的屬性,Size是段的長度,FIle off 是段開始的位置,每個段的第二行中“CONTEN

原创 寫給博士

博士畢業的去向:高校任教(俗稱青椒),科研院所,政府,國企,外企,出國博後, 國內博後,大致分爲這麼7種,下文將以國內高校爲例詳細談談博士如何自我定位與培養 1. 工作兩年後的第一道坎,職稱,刺刀見紅的拼殺,概述 關鍵詞:定崗定編,評聘分

原创 Linux kernel 入門

Linux 內核解讀入門 針對好多Linux 愛好者對內核很有興趣卻無從下手,本文旨在介紹一種解讀Linux內核源 碼的入門方法,而不是解說Linux複雜的內核機制。 1.核心源程序的文件組織 (1)Linux核心源程序通常都安裝在

原创 chapter 2: Representing and manipulating information

         C allows conversion between unsigned and signed. The rule is that the underlying bit representation is not cha

原创 設備驅動、虛擬地址

1.爲什麼要引入設備驅動      操作系統作爲硬件的上層,它是對硬件的管理和抽象。對於操作系統上面的運行庫和應用程序來說,它們希望看到的是一個統一的硬件訪問模式。我們不希望在開發應用程序的時候直接讀寫硬件端口、處理硬件中斷等這些複雜的事

原创 前端/後端渲染

              互聯網早期,用戶使用瀏覽器瀏覽的都是一些沒有複雜邏輯的、簡單的頁面,服務器進程從數據庫獲取數據後,後端的程序在把HTML頁面吐給前端之前,先把HTML頁面上的特定區域、特定符號,先用數據填充,將數據加載進來生成

原创 重要記錄

1.tomcat的work裏的.class文件,只有jsp的文件時間要新於class纔會觸發重新編譯。

原创 c數組名和指針

1.請看下面的代碼: int i, *pa, a[] = {3,4,5,6,7,3,7,4,4,6}; pa = a; for (i = 0; i <= 9; i++) {         printf("%d\n", *pa);

原创 initial pointer [expert c]

   initial differece between pointer and array            Both arrays and pointers can be initialized with a literal s

原创 宏與內聯函數

第一部分:宏 爲什麼要使用宏呢? 因爲函數的調用必須要將程序執行的順序轉移到函數所存放在內存中的某個地址,將函數的程序內容執行完後,再返回到轉去執行該函數前的地方。這種轉移操作要求在轉去執行前要保存現場並記憶執行的地址,轉回後要恢復現

原创 c宏詳解

1. 防止一個頭文件被重複包含  [cpp] view plaincopyprint? #ifndef COMDEF_H    #define COMDEF_H    //頭文件內容    #endif   

原创 編譯和鏈接

1.用gcc編譯、運行c語言的一個helloworld程序,事實上,上述過程可以分解爲4個步驟,分別是預處理(Prepressing)、編譯(Compilation)、彙編(Assembly)和鏈接(Linking),如下圖所所示: 2

原创 堆和棧的區別

一、預備知識—程序的內存分配 一個由c/C++編譯的程序佔用的內存分爲以下幾個部分 1、棧區(stack)— 由編譯器自動分配釋放 ,存放函數的參數值,局部變量的值等。其操作方式類似於數據結構中的棧。 2、堆區(heap) — 一般由程