計算機瑣碎

2021-09-06 22:42:19 字數 1980 閱讀 3834

1.winxp 

常用的網路命令:netstat(埠state)、ipconfig(ip,dhcp,dns)如ipconfig /flushdns或 ipconfig /displaydns、nslookup(dns)、ping(icmp)、tracert(icmp)、route(路由表), arp檢視ip和mac位址,telnet或ssh進行遠端登入,net start 顯示系統正在執行的服務,如dhcp client、dns client、plug and play, 如檔案服務的ftp等,最後還有強大的netsh

系統配置實用程式:msconfig(優化啟動項)  登錄檔程式:regedit(管理程式的配置資訊)(管理程式,或執行的引數)       服務設定:services.msc(管理後台服務程式)

任務計畫程式,可以設定一些定時定點執行的任務,或者觸發到特定的條件才執行,如開機;與linux crontab類似,也是計畫執行程式,如備份,發郵件,檢測;

linux核心裡當kflush,kswapd等核心執行緒去完成寫快取的任務;而有一些執行後半部的任務,如kworker(workqueue), ksoftirq(軟中斷)等

這些簡單而有用的命令可以解決關於系統啟動慢和解決一些基本的網路問題。

2.linux

程序間的通訊:管道,fifo,訊息佇列,訊號量(同步如sem_wait, sem_post, pv操作),共享記憶體(mmap),unix套接字

執行緒間的同步:互斥鎖(如pthread_mutex)和條件變數(如pthread_cond_wait, pthread_cond_broadcast)

3. c/c++

*p++,++的優先順序高於*

union聯合體進行sizeof,得到的是占用最大記憶體的那個,且需考慮對齊的問題

區域性變數(函式內定義, 棧中分配),全域性變數(extern,包含的檔案都可以使用),靜態變數(static 限定在本檔案使用或本函式使用)

在程式設計方式上對遞迴(自動棧,如對二叉樹的遍歷,快速排序)和迭代(需新增棧或者不需要,如斐波拉契數列,二分查詢)的深入理解

c語言釋放了指向的記憶體空間的指標,叫野指標,最好賦值為null,防止再次使用,導致程式崩潰

對c++虛函式的實現的理解,vptr指向虛函式表,實現動態繫結

c++中的const的使用,在函式後修飾的意味著傳入的物件不能修改

4.computer network

tcp/ip的層次:幀頭,以太頭,ip頭,udp/tcp頭,應用協議,層層封裝,層層解析

udp與tcp的深入了解:tcp的狀態機(三次握手,四次分手),tcp的可靠傳輸(超時重傳和選擇重傳)、tcp流量控制(滑動視窗),tcp的擁塞控制(慢啟動和擁塞避免),tcp序列,分片

(dns)本地網域名稱伺服器遞迴查詢和迭代查詢dns的兩者方式,使用的udp協議,速度快。

accept或讀取i/o時阻塞,利用非同步非阻塞

i/o復用:核心發現程序指定的乙個或多個i/o條件就緒,就通知程序,如select和poll,而accept是阻塞與乙個i/o

select,poll, epoll的區別:select的缺點:a. select需要將fd從使用者態拷貝到核心態,當fd很多影響效率;b.每次呼叫select是核心都遍歷檢查傳遞進來的所有fd,這個開銷也較大;c.select支援的檔案描述符太小,預設是1024

epoll的事件驅動模型有待深入了解

5. operating system

共享動態庫的程序a和b,當a修改了動態庫的全域性變數時,並不影響b,因為當修改時,b會有其資料副本。而程序a和程序b共享記憶體時mmap,a修改全域性變數當然會影響到b

elf檔案的格式:.text  已編譯程式的機器**  .rodata:唯讀資料,比如printf語句的格式串和開關語句的跳轉表

.data已初始化的全域性c變數  .bss:未初始化的全域性c變數

nginx:多程序(主程序+工作程序(核)),epoll事件驅動,程序間通訊:共享記憶體或unix域套接字

計算機 計算機基礎整理

大學四年浪費的代價。半夜整理東西 cpu 其功能主要是解釋計算機指令以及處理計算機軟體中的資料。cpu由運算器 控制器和暫存器及實現它們之間聯絡的資料 控制及狀態的匯流排構成。差不多所有的cpu的運作原理可分為四個階段 提取 fetch 解碼 decode 執行 execute 和寫回 writeb...

(計算機視覺)計算機視覺基礎

opencv cximage cimg freeimage opencv中vc庫的版本與visual studio版本的對應關係 vc8 2005 vc9 2008 vc10 2010 vc11 2012 vc12 2013 vc14 2015 vc15 2017 visual studio中的輔助...

計算機基礎 計算機構成

計算機的構成是由硬體和軟體構成。硬體是由輸入裝置,運算器,控制器,儲存器,輸出裝置構成 輸入裝置 鍵盤,掃瞄器等等,是用來輸入指令的 運算器 計算機內部用來做數 算和邏輯運算的 控制器 用來接收和發出指令的 運算器和控制器一起組成cpu,是計算機的大腦 儲存器 是由記憶體和外存組成 1,記憶體 不能...