【單元7】Operating Systems|計算機概論|臺大電機工程學系于天立教授

  Рет қаралды 51,146

臺大科學教育發展中心CASE

臺大科學教育發展中心CASE

Күн бұрын

Пікірлер: 38
@elkyelkyelky
@elkyelkyelky 5 жыл бұрын
很佩服老師,很感謝老師。 把這麼難的內容講的很容易懂。
@SaySaySee
@SaySaySee 8 жыл бұрын
?啥咪是driver OS現在會裝通用的driver,讓我們一插入device,它就能用.就不用再裝driver. driver就是教OS,怎麼和device溝通. 15:40~1730 一開始ROM 寫了就不能再寫,如果壞了,要整個chip換掉. 後來改成可覆寫(EPROM),技術是用紫外線抺去原記錄,再重寫. 後來可覆寫(EEPROM)技術又更進步,可用電子清除.(e.g.聽過的更新BIOS) 有的是設計2顆ROM,如果一顆壞了,還能用另一顆讀 36:00 semaphores寫入一個檔案,確保沒有人在裡面(有沒有旗子),如果沒有就可以插旗進去. flag就像紅綠燈,可讀可不讀.排隊等著能讀.進去讀,就插旗. 中斷interrup:時間靜止. 65:00 用中文當密碼
@rou0304
@rou0304 2 жыл бұрын
driver 驅動程式,過去插音效卡插無線網卡插印表機甚至是插滑鼠都需要驅動程式,但現在越來越少,作業系統都在包辦
@corrinall4868
@corrinall4868 3 жыл бұрын
我是要誇領域的 聽老師上課覺得好有趣 !
@user-bk3zt8sp1dfnodes
@user-bk3zt8sp1dfnodes 8 ай бұрын
計算機概論] 第七講、Operating Systems: 作業系統。 1:45。1 批次。2 互動。3 即時反饋。4 時間分割與多工作分割。5 多元執行終端機。 2:55 人類大腦的多工模式,也是如此。看似可以1個人做很多,其實是 大腦內的專注力分割速度很快而已,1次也是只能做1件事。
@user-bk3zt8sp1dfnodes
@user-bk3zt8sp1dfnodes 7 ай бұрын
計算機概論] 第七講、Operating Systems: 作業系統。18:39 PROCESS定義 : 正在執行中的PROGRAM 的活動過程。22:00 process administration 。。【 schdeuler( 就是排程) : 要 maintain 整個 process table 決定 誰 應該進來 。 call 有 很多方法,可以 double click、或是用 命令提示字元 執行 ,也可以,也可能是 a function call 了 b function ,要 introduce 新的 process 很多方法。22:37 。22:54 應該要放,但未必能夠執行,privilege 的 議題 。。比如說,和 作業系統的 Registry有關的,就會和你要 grant 更高的權限。程式結束了,把那程式 remove 掉,要和 memory management 說 這個memory cell 可以 release 掉;introduce 則是 要配置記憶體空間,24:00 (schdeuler( 就是排程) 決定哪個process 要 waiting。哪個要 ready 。。 scheduler: maintain the process table: 1 introduce new process 2 remove completed process 3 decide whether a process is ready or waiting。 。 。【。 The Windows Registry is a hierarchical database that stores configuration settings and options for the Microsoft Windows operating system and installed applications. It serves as a central repository for storing system settings, user preferences, hardware configurations, and other critical information needed for the operating system and applications to function properly. The registry is organized into a hierarchical structure similar to a file system, with keys and subkeys representing different categories of settings and values storing the actual configuration data. It contains settings for user profiles, system services, device drivers, security policies, file associations, and more. Access to the registry is provided through the Windows Registry Editor (regedit), which allows users to view, modify, and manage registry settings. Making incorrect changes to the registry can have serious consequences for system stability and performance, so it is essential to exercise caution when editing registry entries. Overall, the Windows Registry plays a crucial role in the operation of the Windows operating system and is used extensively by both the system and installed applications to store and retrieve configuration information. 。。】 【 調度程序的一些常見問題包括: 1 公平性:確保所有行程或執行緒獲得公平份額的 CPU 時間和資源。 2 飢餓:防止進程無限期延遲或拒絕存取資源。 3 死鎖:避免進程互相等待對方釋放資源,導致僵局的狀況。 4 優先順序倒置:解決優先順序較低的任務佔用較高優先任務所需資源的情況,導致優先順序倒置。 5 開銷:最小化調度器本身引入的開銷,例如上下文切換和調度決策。 6 即時約束:滿足即時系統的計時要求,其中任務必須在指定的期限內完成。 7 負載平衡:在可用的 CPU 核心或節點之間均勻分配任務,以最佳化資源利用率。 8 適應性:適應不斷變化的工作負載模式或系統條件,以維持最佳效能。 9 可預測性:確保可預測的行為和回應時間,尤其是在時間關鍵的應用程式中。 這些是調度程序需要解決的一些關鍵問題,以有效管理系統資源並保持系統穩定性和效能。】 【 Some common issues with schedulers include: 1 Fairness: Ensuring that all processes or threads receive a fair share of CPU time and resources. 2 Starvation: Preventing processes from being indefinitely delayed or denied access to resources. 3 Deadlock: Avoiding situations where processes are waiting for each other to release resources, leading to a stalemate. 4 Priority Inversion: Addressing scenarios where a lower priority task holds a resource needed by a higher priority task, causing priority inversion. 5 Overhead: Minimizing the overhead introduced by the scheduler itself, such as context switching and scheduling decisions. 6 Real-time Constraints: Meeting the timing requirements of real-time systems, where tasks must complete within specified deadlines. 7 Load Balancing: Distributing tasks evenly across available CPU cores or nodes to optimize resource utilization. 8 Adaptability: Adapting to changing workload patterns or system conditions to maintain optimal performance. 9 Predictability: Ensuring predictable behavior and response times, especially in time-critical applications. These are some of the key issues that schedulers need to address to effectively manage system resources and maintain system stability and performance. 】 。。。 在作業系統中,"ready"和"waiting"是指進程(process)的狀態,而scheduler則是負責管理這些狀態轉換的元件。 "ready"表示進程已經準備好執行,只等待分配CPU資源。 "waiting"表示進程因等待某些事件發生而暫時無法執行,例如等待I/O操作完成或等待系統資源的釋放。 scheduler負責決定哪個"ready"狀態的進程應該被分配CPU時間片段,以及在何時將"waiting"狀態的進程轉換為"ready"狀態。它根據一定的調度算法來決定這些轉換,以優化系統的性能和效率。
@user-bk3zt8sp1dfnodes
@user-bk3zt8sp1dfnodes 7 ай бұрын
計算機概論] 第七講、Operating Systems: 作業系統。【 14:00 程式要執行,一定要在主記憶體( main) 裡。】【 作業系統在一開始,在關機時,作業系統在 HRAD DISK 內。主記憶體還是空的,必須等到 ROM 部分有 協定,叫做 BOOT LOADER,用來 INVOKE 作業系統。。 。。。。 不,主記憶體通常不包括 ROM。 它們是兩種不同類型的記憶體。 主記憶體用於臨時儲存正在運行的程式和數據,而ROM用於儲存韌體和永久軟體。 在許多電腦系統中,主記憶體和ROM通常位於不同的實體位置並使用不同的技術來實現。 ROM包含固定的啟動程式碼和硬體初始化例程,而主記憶體用於執行執行程式。。。。。 。15:43 EEP ROM ( 電子可擦除、可程式化 唯讀記憶體): EEPROM(Electrically Erasable Programmable Read-Only Memory),【 這是一種記憶體技術,允許在特定條件下進行電子擦除和重新編程,而不需要移除芯片或使用紫外線。 】【 EEPROM通常用於儲存資料,並且可以通過電氣信號來擦除和寫入數據,這使得它在許多應用中都非常有用,如嵌入式系統、固件更新等。】 。。。。15:50 。18:24 MBR: 【 主引導記錄(Master Boot Record,MBR),是存儲在磁盤的第一個物理扇區中的特殊區域。MBR包含引導代碼和磁盤分區表,用於引導操作系統並識別磁盤上的分區。 當計算機啟動時,BIOS會將控制權交給MBR,MBR中的引導代碼會加載操作系統的引導程序,從而啟動操作系統。MBR還包含分區表,其中記錄了磁盤上每個分區的信息,如起始位置、大小和類型等。 總的來說,MBR是啟動計算機並加載操作系統所必需的關鍵信息,它在整個系統的引導過程中起著重要作用。】
@user-bk3zt8sp1dfnodes
@user-bk3zt8sp1dfnodes 7 ай бұрын
計算機概論] 第七講、Operating Systems: 作業系統。1:50 ( OS 發展歷史 )。 10:00 記憶體行程,不連續時,會無法執行,稱為,內/外部斷裂? 【當記憶體中的行程或程式所需的資源在物理空間上不連續時,導致無法有效執行,這種情況通常被稱為「外部斷裂」。内部斷裂則是指當分配給行程的內存空間比實際所需的空間要大時,導致浪費了部分內存空間的情況。】。。。【 8:00 new 一個空間配置記憶體給它,但會出現 memory leak 的情況,如果要dynamic 配置記憶體,每次要記得release釋放掉記憶體空間。,或是,pointer 指錯記憶體了。程式設計」第八講:Pointers 5 (dynamic memory allocation。)(保留字: melloc。。。)。 】。。。在 C 語言中,malloc() 函式用於動態分配記憶體。這個函式在程式運行時,根據需要動態地分配一塊指定大小的記憶體空間,並返回一個指向分配空間的指標。這樣的記憶體分配方式允許程式在執行時根據實際需要動態調整記憶體的大小和使用情況,提高了程式的靈活性和效率。使用完記憶體後,應該使用 free() 函式釋放動態分配的記憶體,以免出現記憶體洩漏或浪費的問題。。。。。。。。12:00 paging 法是建立在虛擬記憶體的技術上,虛擬記憶體是一個將主記憶體與硬碟併在一起的方式,如果主記憶體不夠使用,就會動態把沒有用到的資料載入到硬碟上,要運行的行程則留在主記憶體中運行。使得記憶體容量比較大。。。12:17 。。。Paging is a memory management scheme used by operating systems to efficiently manage memory allocation for processes. In paging, the main memory is divided into fixed-size blocks called "pages," and the logical memory of a process is divided into fixed-size blocks called "frames." The size of a page is typically a power of 2, such as 4 KB or 8 KB. When a process is loaded into memory, it is divided into fixed-size blocks called "pages," and these pages are then mapped to available frames in the main memory. The operating system maintains a data structure called a "page table" to keep track of the mapping between pages and frames. When a process accesses a memory address, the operating system translates the virtual address to a physical address using the page table. If the page containing the desired memory address is not currently in main memory (i.e., it is on disk), a page fault occurs. The operating system then loads the required page into an available frame in main memory, updates the page table to reflect the new mapping, and retries the memory access. Paging allows for efficient memory allocation and management because it allows processes to use more memory than physically available by swapping pages in and out of main memory as needed. It also provides memory protection and isolation between processes, as each process has its own page table mapping virtual addresses to physical addresses.
@user-bk3zt8sp1dfnodes
@user-bk3zt8sp1dfnodes 7 ай бұрын
計算機概論] 第七講、Operating Systems: 作業系統。18:39 PROCESS定義 : 正在執行中的PROGRAM 的活動過程。 而一個process state包含: 1 紀錄包含你現在這個程式執行到哪裡, 你執行到一半可能會被 swap 出去。2 紀錄包含那時候你所有在 cpu 裡面的 general purpose registers 19:02 , 因為換出去再換回來要 保證 下一步要執行的 地方 是正確的,例如: 你換出去之前,可能是把 主記憶體的某個咚咚,讀到 cpu 的 5號 暫存器,然後就被換出去了。 之後,另一個程式來做事的時候,把暫存器5號的值改掉了;那,等你把程式換回來的時候,連同剛剛的 cpu 的 5號 暫存器 的值,也要換回來。這樣下一個動作要把 5號暫存器的值 加到 6號暫存器的值 19:10 19:00 。 。。19:40 。19:30。。3 如果被換出到 硬碟 ( virtual memory 的技術 ),因為不知道何時會被交換,所以也要記錄,你的程式在執行時,所配置的那些記憶體,相對應的記憶體位置必須要回來,不然你繼續算下去,就錯了。 那maintain 整個 process 的咚咚是一個process table 。 。。。。程式計數器、通用暫存器、關聯的儲存單元和進程狀態記錄都是管理電腦系統內進程的執行所涉及的元件。 程式計數器(PC)是一個特殊暫存器,它儲存CPU要讀取和執行的下一指令的記憶體位址。 通用暫存器(GPR)用於在指令執行期間暫時保存資料。 它們通常用於算術、邏輯和資料移動操作。 關聯的記憶體單元儲存與進程的執行相關的資料和指令。 這些記憶體單元可以包括指令記憶體、資料記憶體以及任何其他由進程存取的記憶體位置。 進程狀態記錄維護有關進程當前狀態的信息,包括程式計數器、通用暫存器的值和其他相關資料。 它允許作業系統在上下文切換和調度決策期間保存和恢復進程的狀態。 總之,程式計數器指向下一則要執行的指令,通用暫存器保存臨時數據,相關的儲存單元儲存程式指令和數據,進程狀態記錄維護進程的當前狀態。 這些組件一起工作以促進電腦系統中進程的執行。。。。。 The program counter, general-purpose registers, associated memory cells, and process state record are all components involved in managing the execution of a process within a computer system. The program counter (PC) is a special register that stores the memory address of the next instruction to be fetched and executed by the CPU. General-purpose registers (GPRs) are used to hold data temporarily during the execution of instructions. They are typically used for arithmetic, logical, and data movement operations. Associated memory cells store data and instructions that are relevant to the execution of the process. These memory cells may include the instruction memory, data memory, and any other memory locations accessed by the process. The process state record maintains information about the current state of the process, including the values of the program counter, general-purpose registers, and other relevant data. It allows the operating system to save and restore the state of the process during context switches and scheduling decisions. In summary, the program counter points to the next instruction to be executed, general-purpose registers hold temporary data, associated memory cells store program instructions and data, and the process state record maintains the current state of the process. These components work together to facilitate the execution of processes in a computer system. 。。
@user-bk3zt8sp1dfnodes
@user-bk3zt8sp1dfnodes 7 ай бұрын
計算機概論] 第七講、Operating Systems: 作業系統。 29:45 time slice and context switch。( 間隔長、短的好處是什麼 ?31:15 29:50 )29:55 【【【 (context switch 所需 cost 的時間,是固定且必要的,無法【讓context switch 所需 cost 的時間】 更短了,】 【 30:00 例子: 【現在正在執行B process,B process 的中斷時刻到了】,就中斷【終端 CPU 】 的工作並 call OS 的 subroutine 做 context switch 30:11 30:21 把 B process save 進去,把 process A LOAD 出來, 並把控制權給 process A ,30:33 這時刻,A 開始執行,執行 process A 所 分配到的 time slice;之後,process A 又【觸發中斷 30:40 】【 process A 的中斷時刻到了... ... 】,並由 【A、B process 不斷重複上述論調,到 program shutdown 結束。】。。。。 【 31:15 如果 time slice 切得太短,大部分 時間 都會耗在 context switch 上面;31:33 31:35 31:40 如果 time slice 切得太長,使用者的 response time ( 回復時間長度 ) 就會感受上,覺得效率不好。。和 time bar( 完成度 ) 的設計有關 ?。。。 response time 和 time slice 是兩個不同的概念,在多任務處理系統中起著不同的作用。 Response Time(響應時間)指的是從發送請求到獲得第一次回應所需的時間。通常用於描述系統對於用戶或外部事件的反應速度。較短的響應時間意味著系統對請求的處理速度較快,用戶體驗較好。 Time Slice(時間片段)是多任務處理系統中使用的一種調度機制,指的是CPU分配給每個任務執行的時間段。當一個任務的時間片段用完後,調度器會將CPU分配給下一個任務,以便進行執行。時間片段的長度取決於系統的設置和要求。 這兩者之間的關係在於,時間片段的長度會影響系統的響應時間。如果時間片段較短,系統可以更頻繁地切換任務,從而使得每個任務的回應時間更為迅速。但如果時間片段過短,可能會增加調度器的開銷,導致額外的系統負擔。因此,系統需要根據具體的應用場景和性能要求來調整時間片段的長度,以達到最佳的性能和響應時間。 。。Response time and time slice are two different concepts that play different roles in a multitasking system. Response Time refers to the time it takes from sending a request to receiving the first response. It is typically used to describe the system's speed of response to users or external events. A shorter response time implies a faster processing speed of requests, leading to better user experience. Time Slice is a scheduling mechanism used in multitasking systems, referring to the amount of time allocated to each task to execute. When a task's time slice is up, the scheduler allocates the CPU to the next task for execution. The length of a time slice depends on system settings and requirements. The relationship between these two lies in the fact that the length of the time slice can affect the system's response time. A shorter time slice allows for more frequent task switching, potentially leading to quicker response times for each task. However, if the time slice is too short, it may increase overhead on the scheduler, resulting in additional system burden. Therefore, the system needs to adjust the length of the time slice based on specific application scenarios and performance requirements to achieve optimal performance and response time.。】
@RepublicOfLolicon
@RepublicOfLolicon Жыл бұрын
想請教一個問題,請問bios可以算是一種os嗎?
@justforfun8230
@justforfun8230 Жыл бұрын
那是韌體 輔助驅動作業系統
@user-bk3zt8sp1dfnodes
@user-bk3zt8sp1dfnodes 7 ай бұрын
see also 計算機概論] 第6講 operating systems-【 boot strapping input/output system。。 】【 BIOS : 17:26 ( BOOT STRAPPING;BOOTING ) ROM: BOOT LOADER。 第1步: 使用BIOS ,執行已經在 ROM 內的 BOOT LOADER 。 呼叫 OS 到主記憶體後後,把【權限】給OS,OS就會在主記憶體內 運行。。。】
@vanillachen5550
@vanillachen5550 3 жыл бұрын
想請問Deadlock的部分,理解為什麼三項條件都要有才可能會發生死結。但請問為甚麼不是三項條件都有了就會發生死結、而只是有可能發生呢?(意思是三個條件都達成了也不一定會發生死結)謝謝。
@趙嘉璽
@趙嘉璽 2 жыл бұрын
三個條件都滿足的情況下 有可能車頭跟車頭對到 就有一台車可以先讓別人走 所以也不一定會deadlock 但像範例這種預測不到會撞到車尾的 就有可能deadlock
@user-bk3zt8sp1dfnodes
@user-bk3zt8sp1dfnodes 7 ай бұрын
計算機概論] 第七講、Operating Systems: 作業系統。【 14:00 程式要執行,一定要在主記憶體( main) 裡。】【 作業系統在一開始,在關機時,作業系統在 HRAD DISK 內。主記憶體還是空的,必須等到 ROM 部分有 協定,叫做 BOOT LOADER,用來 INVOKE 作業系統。。 。。。No, main memory typically does not include ROM. They are two different types of memory. Main memory is used for temporary storage of running programs and data, while ROM is used for storing firmware and permanent software. In many computer systems, main memory and ROM are usually located in different physical locations and implemented using different technologies. ROM contains fixed boot code and hardware initialization routines, while main memory is used for running executing program。。。 不,主記憶體通常不包括 ROM。 它們是兩種不同類型的記憶體。 主記憶體用於臨時儲存正在運行的程式和數據,而ROM用於儲存韌體和永久軟體。 在許多電腦系統中,主記憶體和ROM通常位於不同的實體位置並使用不同的技術來實現。 ROM包含固定的啟動程式碼和硬體初始化例程,而主記憶體用於執行執行程式。。。。。 。。。。 。 。Main memory, ROM (Read-Only Memory), bootloader, and the operating system are all integral components of a computer system. Main memory is the primary memory where data and instructions are stored temporarily while the computer is running. It is typically volatile, meaning its contents are lost when the power is turned off. ROM, on the other hand, is non-volatile memory that contains firmware or software that is permanently stored and cannot be easily modified or erased. It often contains essential instructions required to boot up the computer and initialize its hardware components. The bootloader is a small program stored in ROM or another non-volatile memory that is responsible for loading the operating system into main memory during the boot process. It typically performs hardware initialization, checks system integrity, and loads the operating system kernel into memory. The operating system is the software that manages the computer hardware and provides services to applications. It is loaded into main memory after being loaded by the bootloader and is responsible for managing resources, providing a user interface, and executing user programs. In summary, the main memory provides temporary storage for data and instructions during program execution, ROM contains essential firmware and bootloader code required for system initialization and booting, and the operating system manages the overall operation of the computer system once it has been loaded into main memory by the bootloader. 。。。。。。
@user-bk3zt8sp1dfnodes
@user-bk3zt8sp1dfnodes 7 ай бұрын
計算機概論] 第七講、Operating Systems: 作業系統。 【 這裡1:00:15 有 deadlock 的關係圖】。46:00 47:00 48:00 49:00 。【【The deadlock and the Chinese dining problem are related concepts in computer science, particularly in the field of concurrency and synchronization.】】50:00 53:08 【 如何避免 deadlock : 1 避免 deadlock: break 條件3: 給os 至高無上的權限,可以硬把記憶體抽回。break 條件2 : 強制 不可以dynamic binding,一定要 early binding。54:34 54:44。 。 2 保護 deadlock 3 解決 deadlock】【 解決 deadlock 問題,相對應會產生 starvation ( 飢餓 ) 的問題,永遠等不到 可以 process 的時刻..56:03; 解決 starving 的問題: aging system 法1:00:44 。1:01:03 。。。【【 讓優先權會出現迴歸效應。。1:02:04 。。1:02:35 資通網路安全問題 security。。: insecure passwords & bad habits。。。auditing software (record and analyze activities) ; sniffing software;virus/worms/ trojan horses ; privilege levels & privileged instructions。。。】。。。。1:12:12。。。病毒、蠕蟲、特洛伊木馬等恶意軟件通常會試圖利用特權指令和系統漏洞來獲取系統的高權限,以執行危害性操作,例如修改系統文件、竊取敏感信息等。嗅探軟件可能會被用於檢測並監視這些恶意軟件的活動,以及監控網絡流量中的異常行為。1:14:52 1:15:32 病毒嚴格說來不是生命體,他必須要進入生物體內才會行動,在此之前只是結晶( crystal)。。。1:22:00。。。
@立雯汪
@立雯汪 Жыл бұрын
同學要珍昔老師們啊
@gonnafly0
@gonnafly0 7 жыл бұрын
想請問0:28:25時,老師唸一個英文,是 sub rating 嗎?(我不確定) 是在說 interrupt 有不同的分類
@呂柏勳-f1p
@呂柏勳-f1p 7 жыл бұрын
是subroutine 子程式的意思
@gonnafly0
@gonnafly0 7 жыл бұрын
謝謝~
@user-bk3zt8sp1dfnodes
@user-bk3zt8sp1dfnodes 7 ай бұрын
計算機概論] 第七講、Operating Systems: 作業系統。42:00 【 42:25 prerequisites for deadlock。 若 發生死結,則 會同時滿足3個條件: 1 競爭1個不可被分享的資源時。 2 隨著時間在不同時間點,動態的向系統要求不同資源( 動態綁定時 dynamic binding )。3 一旦資源已分配給 那個process 而無法 強制 拿回資源 時( 單向 進行中。)。46:00 47:00 48:00 49:00 。】 【 The deadlock and the Chinese dining problem are related concepts in computer science, particularly in the field of concurrency and synchronization. Deadlock: Deadlock refers to a situation in which two or more processes are unable to proceed because each is waiting for the other to release a resource, resulting in a standstill. In a deadlock situation, the processes are effectively stuck, and no progress can be made without external intervention. Chinese Dining Problem: The Chinese dining problem is a classical synchronization problem that illustrates deadlock conditions. It involves a group of philosophers sitting around a dining table, each needing two chopsticks to eat. If each philosopher picks up one chopstick and waits for the other, a deadlock can occur where no philosopher can proceed with eating, as they are all waiting for a chopstick held by another philosopher. In essence, the Chinese dining problem exemplifies a scenario where multiple processes contend for resources in a circular dependency manner, leading to a deadlock situation. It serves as a useful illustration for understanding deadlock conditions and the importance of synchronization mechanisms in preventing them.】
@frankchiou4229
@frankchiou4229 2 жыл бұрын
31:43 可是問題就在你的response time就變慢了 請問這句是什麼意思?
@嗨-h2q
@嗨-h2q 2 жыл бұрын
就是整個執行的速度就變慢了吧
@user-bk3zt8sp1dfnodes
@user-bk3zt8sp1dfnodes 7 ай бұрын
意思是: 使用者體驗變差,因為 收到第一次回復時間太長了。 雖然時間不變但是使用者經驗不佳。 反過來說,如果windows 明明在提升效能上有 改善,但是,使用者經驗卻變差,就是不 好的改善?
@frankchiou4229
@frankchiou4229 2 жыл бұрын
看到42:23 正要進deadlock
@立雯汪
@立雯汪 Жыл бұрын
老師有條不問的😊導
@立雯汪
@立雯汪 Жыл бұрын
老師朋友
@立雯汪
@立雯汪 Жыл бұрын
什摸是牛逼
@立雯汪
@立雯汪 Жыл бұрын
我也是個老師出生的
@立雯汪
@立雯汪 Жыл бұрын
同學😊一見不要太多 會很難管
@立雯汪
@立雯汪 Жыл бұрын
再見了 投資
@立雯汪
@立雯汪 Жыл бұрын
我回音樂界了
@立雯汪
@立雯汪 Жыл бұрын
我是教音樂的
@有馬かな-j9s
@有馬かな-j9s Жыл бұрын
@@立雯汪 自問自答 牛逼
@user-bk3zt8sp1dfnodes
@user-bk3zt8sp1dfnodes 7 ай бұрын
計算機概論] 第七講、Operating Systems: 作業系統。18:39 PROCESS定義 : 正在執行中的PROGRAM 的活動過程。22:00 process administration 。。【 schdeuler( 就是排程) : 要 maintain 整個 process table 決定 誰 應該進來 。 call 有 很多方法,可以 double click、或是用 命令提示字元 執行 ,也可以,也可能是 a function call 了 b function ,要 introduce 新的 process 很多方法。22:37 。22:54 應該要放,但未必能夠執行,privilege 的 議題 。。比如說,和 作業系統的 Registry有關的,就會和你要 grant 更高的權限。程式結束了,把那程式 remove 掉,要和 memory management 說 這個memory cell 可以 release 掉;introduce 則是 要配置記憶體空間,24:00 (schdeuler( 就是排程) 決定哪個process 要 waiting。哪個要 ready 。 online 的 dynamic 最佳化排程 24:50 。 online learning 可以學習使用者如何使用電腦。25:49 。。。【。26:09 dispatcher ( 派遣) : 透過 call interrupt ( 中斷(interrupt)通常由硬體裝置或軟體生成,用於通知處理器發生了特定事件需要處理。在硬體一級,中斷可以由外部設備(如時鐘、鍵盤、網路介面卡等)生成。在軟體一級,中斷可以由CPU執行指令生成,例如系統呼叫(system call)。 中斷有不同的類型,每種類型都有其特定的編碼方式,用於識別和區分不同的中斷事件。在 x86 架構中,每個中斷都有一個唯一的編碼,例如,時鐘中斷的編碼是 0x08。 在處理中斷時,CPU會跳轉到特定的中斷處理程序,這些處理程序通常被稱為中斷服務例程(interrupt service routine,ISR)。ISR是一段程式碼,用於處理特定的中斷事件。當中斷發生時,CPU會自動執行相應的ISR,並在完成後恢復正常執行。 中斷並不是暫存器(register),而是一種觸發處理器執行特定程式碼的機制。然而,處理中斷時,CPU會保存當前執行狀態的一些資訊,例如程序計數器(program counter)和狀態暫存器(status register),以便在處理完中斷後能夠恢復正常執行。。】。。) ,來觸發 context switch 。】【 27:16 os 想要做 context switch,但問題是,他不在 process 的時候,怎麼辦 ? 把os 想成 sub-routine,何時可以取得執行權? 27:28 28:23 { >0< }。29:45 time slice and context switch。。】 。To execute a context switch, the following steps are typically involved: Save the current task's context: The processor saves the state of the currently running task, including its registers, program counter, and other relevant information, to memory or a data structure. Select the next task to run: The operating system's scheduler selects the next task to run from the pool of ready tasks, based on scheduling policies like priority or time-sharing. Load the context of the next task: The scheduler loads the saved context of the selected task from memory or the data structure into the processor's registers and other relevant hardware components. Switch to the next task: The processor switches execution to the newly loaded task, starting its execution from the point where it was last interrupted. Resume execution of the next task: The processor resumes executing the selected task, which continues running until it either completes, is preempted by another task, or voluntarily yields the CPU. Context switches are a fundamental operation in multitasking operating systems, allowing them to efficiently manage and switch between multiple tasks running concurrently on a single processor.。
@user-bk3zt8sp1dfnodes
@user-bk3zt8sp1dfnodes 7 ай бұрын
計算機概論] 第七講、Operating Systems: 作業系統。18:39 PROCESS定義 : 正在執行中的PROGRAM 的活動過程。 而一個process state包含: 1 紀錄包含你現在這個程式執行到哪裡, 你執行到一半可能會被 swap 出去。2 紀錄包含那時候你所有在 cpu 裡面的 general purpose registers 19:02 , 因為換出去再換回來要 保證 下一步要執行的 地方 是正確的,例如: 你換出去之前,可能是把 主記憶體的某個咚咚,讀到 cpu 的 5號 暫存器,然後就被換出去了。 之後,另一個程式來做事的時候,把暫存器5號的值改掉了;那,等你把程式換回來的時候,連同剛剛的 cpu 的 5號 暫存器 的值,也要換回來。這樣下一個動作要把 5號暫存器的值 加到 6號暫存器的值 19:10 19:00 。 。。19:40 。19:30。20:10 。3 如果被換出到 硬碟 ( virtual memory 的技術 ),因為不知道何時會被交換,所以也要記錄,你的程式在執行時,所配置的那些記憶體,相對應的記憶體位置必須要回來,不然你繼續算下去,就錯了。 那maintain 整個 process 的咚咚是一個process table 。 process table 會記錄 優先權 ,如果是 system kernel 的重要性 的話,就會非常優先。21:07 。 資源分配: 等待 和 就緒;cin( c ++ library 輸入保留字 ) 就會要 鍵盤資源; cout( c++ library 輸出 保留字 。) 就會要 螢幕 的資源。。21:18 。 你的 process 在執行中? 還是在 queue 裡面 。。 因為只有 2 個 core 真正能在執行的 process 只有2個。。21:27 。。【【 在雙核心的電腦上,如果有46個 process 在 waiting 狀態,表示它們暫時無法執行,等待著某些條件的滿足或事件的發生。即使有46個 process 在 waiting,如果只有2個核心可用,最多只能有2個 process 同時處於 ready 狀態,因為每個核心只能執行一個 process。這意味著雖然有46個 process 在 waiting,但同一時間最多只有2個 process 可以被處理。 】】。。。【每個核心都可以執行一個 process。】。 分配給進程的記憶體區域、進程的優先權以及就緒/等待狀態都是在進程表中儲存和管理的屬性。 進程表是作業系統維護的資料結構,用於追蹤系統中每個正在運行的進程的資訊。 這些資訊通常包括進程的記憶體分配、優先權和當前執行狀態(例如就緒或等待)。 因此,這些屬性在進程表內相互關聯,允許作業系統根據進程的優先權和資源需求有效地管理和調度進程。。。 The memory area assigned to a process, its priority, and its ready/waiting status are all attributes stored and managed in the process table. The process table is a data structure maintained by the operating system to keep track of information about each running process in the system. This information typically includes the process's memory allocation, priority level, and current execution status (such as ready or waiting). So, these attributes are interconnected within the process table, allowing the operating system to efficiently manage and schedule processes based on their priority and resource requirements.
【單元4】Data Manipulation (1)|計算機概論|臺大電機工程學系于天立教授
1:29:59
КОГДА К БАТЕ ПРИШЕЛ ДРУГ😂#shorts
00:59
BATEK_OFFICIAL
Рет қаралды 8 МЛН
邏輯 01. 導論:什麼是邏輯?
1:00:11
臺大開放式課程 NTU OCW
Рет қаралды 168 М.
科學的盡頭是什麼?來聽費曼如何預測物理學的發展!
6:38
Timothy Huang 物入奇途
Рет қаралды 9 М.
【單元3】Data Storage (3)|計算機概論|臺大電機工程學系于天立教授
1:30:52
臺大科學教育發展中心CASE
Рет қаралды 83 М.
高華教授"第一講: 毛澤東何以發動文革?"
2:09:29
phe2003
Рет қаралды 4,4 МЛН
袁腾飞直播讲俄罗斯战斗民族
1:41:58
philipcui
Рет қаралды 458 М.
【單元1】Data Storage (1)|計算機概論|臺大電機工程學系于天立教授
1:32:26
臺大科學教育發展中心CASE
Рет қаралды 494 М.