UDP 作業系統發展 多道技術

2022-09-14 16:12:17 字數 1204 閱讀 2839

import socket

udp_sk = socket.socket(type=socket.sock_dgram) # udp協議

udp_sk.bind(('127.0.0.1',9000)) # 繫結位址

msg,addr = udp_sk.recvfrom(1024)

udp_sk.sendto(b'hi',addr)

udp_sk.close()

import socket

ip_port=('127.0.0.1',9000)

udp_sk=socket.socket(type=socket.sock_dgram)

udp_sk.sendto(b'hello',ip_port)

back_msg,addr=udp_sk.recvfrom(1024)

print(back_msg.decode('utf-8'),addr)

"""時間伺服器的實現原理

1.內部小電容供電

2.遠端時間同步

"""

"""學習併發程式設計其實就是在學習作業系統的發展史(底層邏輯)"""

1.穿孔卡片時代

cpu的利用率極低

2.聯機批處理系統

將多個程式設計師的程式一次性錄入磁帶中 之後交由輸入機輸入並由cpu執行

3.離線批處理系統

現代計算機的雛形(遠端輸入 高速磁帶 主機)

# 前提:單核cpu

多道技術

切換+儲存狀態

"""cpu工作機制

1.當某個程式進入io狀態的時候 作業系統會自動剝奪該程式的cpu執行許可權

2.當某個程式長時間占用cpu的時候 作業系統也會剝奪該程式的cpu執行許可權

"""並行與併發(******)

並行:多個程式同時執行

併發:多個程式只要看起來像同時執行即可

# 問:單核cpu能否實現並行

肯定不能,但是可以實現併發

# 問:12306可以同一時間支援幾個億的使用者買票 問是並行還是併發

肯定是併發(高併發)

星軌:微博能夠支援八個星軌

作業系統之多道程式設計

早期的批處理系統中,i o裝置和cpu仍然是序列工作的,cpu時間浪費巨大,浪費了cpu的處理能力。作業系統中只有乙個可執行程式,乙個任務執行時,必須cpu執行完,i o才能執行,兩者不可並行。隨著cpu速度迅速提高而i o裝置速度卻提高不多,導致cpu和i o裝置之間的速度不匹配,矛盾越來越突出。...

作業系統 多道程式排程

計算機系統採用了中斷和通道技術之後,i o裝置和cpu可以並行操作,初步解決了高速處理和低速外部裝置之間的矛盾,提高了計算機的工作效率。但這種並行使有限的。多道程式設計是在計算機記憶體中同時存放幾道相互獨立的程式 只有將程式放到記憶體cpu才會執行 使它們在管理程式控制之下,相互穿插地執行 記憶體中...

作業系統發展

作業系統是乙個大型的系統程式 1 提供使用者介面,方便使用者控制計算機 2 複製位應用程式分配和排程軟硬體資源 1 手工操作 2 單道批處理系統 3 多道批處理系統 4 分時系統 批量 作業佇列 自動單道 依次序列 背景 電晶體時代 效率 外設與cpu交替空閒和忙碌,cpu和外設利用效率低下 兩個技...