原创 fork兩次不同返回值的實現

【NOTE4】 首先必須有一點要清楚,函數的返回值是儲存在寄存器eax中的。 其次,當fork返回時,新進程會返回0是因爲在初始化任務結構時,將eax設置爲0; 在fork中,把子進程加入到可運行的隊列中,由進程調度程序在適當的時

原创 Linux興趣小組暑假留校第二次講座總結

暑假留校第二次講座,講了很多東西,聽的時候零零散散記下一些關鍵詞,現在把這些整理以下,以免以後忘記 編碼規範 作爲一個程序員,必不可少的事兒就是寫代碼,每個人寫代碼的風格和形式可能有所不同,我覺得這和一開始接觸代碼,寫代碼的時候慢

原创 signal信號和sigaction信號處理機制

1. signal信號處理機制 可以用函數signal註冊一個信號捕捉函數。原型爲: #include typedef void (*sighandler_t)(int); sighandler_t signal

原创 LinuxC編程實戰學習——第六章文件操作

第六章的內容基本上看完了,但是感覺還沒有完全掌握,一些函數的參數,使用方法,還有宏定義,都記的不是很準,看書的時候也發現很多不會的問題,在這裏把書上遇到的問題,以及書上的小知識點記下來 (1)atoi函數 這個函數的作用是把字符串

原创 Linux靜態庫和共享庫

1.什麼是庫 在windows平臺和linux平臺下都大量存在着庫。本質上來說庫是一種可執行代碼的二進制形式,可以被操作系統載入內存執行。 由於windows和linux的本質不同,因此二者庫的二進制是不兼容的。 本文僅限於介紹linu

原创 Linux興趣小組暑假留校第四次講座總結

printf的實現 Makefile printf的實現 printf的聲明 int _cdecl printf(const char* format, …); _cdecl是C和C++程序的缺省調用

原创 簡單快速瞭解gcc(新手入門)

gcc簡介 gcc工作步驟 gcc語法 gcc常用選項 多源文件編譯方法 剛安裝上Linux系統,安好Vim的時候,還不知道該怎麼用它,後來基本上用的很多的就是 vim xxx.c、gcc xxx.c、./aout三步

原创 Linux操作系統概述

Linux操作系統概述 操作系統在整個計算機系統所處的位置 操作系統執行C程序的過程 一個簡單的C程序在操作系統下運行,操作系統的執行過程是怎樣到的? 文件名:test.c #include <stdio.h> main() {

原创 Linux操作系統以及內核簡介

Linux內核簡介 Linux操作系統 Linux內核 內核組成 系統態和用戶態 庫函數和系統調用 中斷機制 Linux內核和傳統Unix內核的比較 Linux內核簡介 Linux操作系統 操作系統是指在整個系統中負責

原创 鏈表的基本操作(單鏈表、雙向鏈表、循環鏈表)

本週第一次講座,學長給我們簡單的概述了數據結構和算法,然後對鏈表的一些操作進行了講解,下來之後,我把原來書上的一些 鏈表的基本操作與鏈表的逆置,排序等操作結合起來,整理出來 鏈表是由結點構成的,關鍵是定義結點C語言程序設計上兩大特例

原创 .c和.h文件的區別(頭文件與之實現文件的的關係~ )

一個簡單的問題:.c和.h文件的區別 學了幾個月的C語言,反而覺得越來越不懂了。同樣是子程序,可以定義在.c文件中,也可以定義在.h文件中,那這兩個文件到底在用法上有什麼區別呢? 2樓: 子程序不要定義在.h中。 函數定義要放在.c中

原创 一看就會,一看就懂,快速上手Git

安裝git 創建版本庫 時光機穿梭 遠程倉庫 添加遠程庫 剛進入小組時,學長幫我註冊創建了很多東西,當時看的時候完全看不懂,這是啥啊?後來有一次講座 講了git的使用方法,其實還是有點不清楚git到底是幹嘛用的,怎麼用gi

原创 Linux興趣小組暑假留校第三次講座總結

目標文件裏有什麼 進程地址空間 共享庫 運行時庫 系統調用 目標文件裏有什麼 1.目標文件格式 現在PC平臺流行的可執行文件格式主要是Windows下的PE和Linux的ELF,它們都COFF格式的變種。目標文件就是源代

原创 三條命令解決Git 如何刪除遠程服務器文件同時保留本地文件

有時候會想把github上的文件刪除,但是本地倉庫裏的文件想保留下來該怎麼辦,只要用三條命令就能完成了 git rm --cached filename/-r directory git commit "xxxx" git push

原创 Linux內核介紹

單內核與微內核設計之比較 單內核就是從整體上把內核作爲一個大過程來實現,同時也運行在一個單獨的地址空間上,這樣的內核通常以單個靜態二進制文件的形式存放於磁盤中,而所有內核服務都在這樣的一個大內核地址空間上運行,進程管理、內存管理等是其中的