![第2章進(jìn)程與線程_第1頁(yè)](http://file1.renrendoc.com/fileroot_temp2/2020-11/14/4b8bbef5-b501-47f0-b5bb-ca6d6be64cde/4b8bbef5-b501-47f0-b5bb-ca6d6be64cde1.gif)
![第2章進(jìn)程與線程_第2頁(yè)](http://file1.renrendoc.com/fileroot_temp2/2020-11/14/4b8bbef5-b501-47f0-b5bb-ca6d6be64cde/4b8bbef5-b501-47f0-b5bb-ca6d6be64cde2.gif)
![第2章進(jìn)程與線程_第3頁(yè)](http://file1.renrendoc.com/fileroot_temp2/2020-11/14/4b8bbef5-b501-47f0-b5bb-ca6d6be64cde/4b8bbef5-b501-47f0-b5bb-ca6d6be64cde3.gif)
![第2章進(jìn)程與線程_第4頁(yè)](http://file1.renrendoc.com/fileroot_temp2/2020-11/14/4b8bbef5-b501-47f0-b5bb-ca6d6be64cde/4b8bbef5-b501-47f0-b5bb-ca6d6be64cde4.gif)
![第2章進(jìn)程與線程_第5頁(yè)](http://file1.renrendoc.com/fileroot_temp2/2020-11/14/4b8bbef5-b501-47f0-b5bb-ca6d6be64cde/4b8bbef5-b501-47f0-b5bb-ca6d6be64cde5.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第2章 進(jìn)程管理,進(jìn)程的引入,進(jìn)程的狀態(tài)及其組成控制,線程,進(jìn)程控制,程序的順序執(zhí)行,順序性:處理機(jī)的操作嚴(yán)格按規(guī)定順序執(zhí)行 封閉性:程序執(zhí)行時(shí),獨(dú)占系統(tǒng)資源 可再現(xiàn)性:當(dāng)初始條件相同時(shí),程序多次執(zhí)行的結(jié)果相同,P1:a=x+y P2: b=a-5 P3: c=b+1,程序的并發(fā)執(zhí)行,P1: a=5 P2: b=6 P3: c=a+b P4: d=c+1,間斷性:程序在并發(fā)執(zhí)行時(shí),形成了相互制約關(guān)系。相互制約將導(dǎo)致并發(fā)程序具有“執(zhí)行暫停執(zhí)行”這種間斷性的活動(dòng)規(guī)律 失去封閉性:系統(tǒng)中的資源供多個(gè)程序共享,致使程序的運(yùn)行失去了封閉性 失去可再現(xiàn)性:,程序并發(fā)執(zhí)行的條件Bernstein,P1: a
2、=5 P2: b=6 P3: c=a+b P4: d=c+1,P1、P2可以并發(fā)執(zhí)行嗎? P3、P4可以并發(fā)執(zhí)行呢?,問(wèn)題?,P1:a=5 P2:b=6 R(P1)=W(P1)=a R(P2)=W(P2)=b R(P1) W(P2)= R(P2) W(P1)= W(P1) W(P2)= R(P1)W(P2)R(P2)W(P1)W(P1)W(P2)= P1、P2可以并發(fā)執(zhí)行,Bernstein條件例1,Bernstein條件例2,P3:c=a+b P4:d=c+1 R(P3)=a,bW(P3)=c R(P4)=cW(P4)=d R(P3) W(P4)= R(P4) W(P3)=c R(P3) W
3、(P4) R(P4) W(P3)W(P3)W(P4) =c P3、P4不能并發(fā)執(zhí)行,可并發(fā)執(zhí)行的程序 在一個(gè)數(shù)據(jù)集合上的執(zhí)行過(guò)程,進(jìn)程程序 動(dòng)態(tài)的靜態(tài)的 并發(fā)的順序 暫時(shí)的永久的 數(shù)據(jù)結(jié)構(gòu)=程序+數(shù)據(jù)+PCB 程序與進(jìn)程不是一一對(duì)應(yīng)關(guān)系,進(jìn)程的定義,進(jìn)程狀態(tài)轉(zhuǎn)換圖,2.2 進(jìn)程的狀態(tài)及其組成,五種狀態(tài)的進(jìn)程狀態(tài)轉(zhuǎn)換圖,雙掛起狀態(tài)的進(jìn)程狀態(tài)轉(zhuǎn)換圖,進(jìn)程控制塊PCB,引入PCB的作用:就是使程序能成為獨(dú)立運(yùn)行的單位,并可和其他進(jìn)程并發(fā)執(zhí)行。,進(jìn)程控制塊PCB 程序段 數(shù)據(jù)段 堆棧,PCB是進(jìn)程實(shí)體的一部分,是OS中最重要的數(shù)據(jù)結(jié)構(gòu),進(jìn)程描述信息 進(jìn)程名 進(jìn)程標(biāo)識(shí)符 用戶名 處理機(jī)狀態(tài)信息 通用寄存
4、器 指令計(jì)數(shù)器 程序狀態(tài)字寄存器 棧指針,進(jìn)程調(diào)度信息 進(jìn)程狀態(tài) 進(jìn)程優(yōu)先級(jí) 運(yùn)行統(tǒng)計(jì)信息。 進(jìn)程阻塞原因。 進(jìn)程控制和資源占有量信息 程序入口地址 程序的外存地址 進(jìn)程同步及通信機(jī)制 資源占有信息 鏈接指針,進(jìn)程控制塊PCB的內(nèi)容,進(jìn)程控制塊PCB的組織,鏈接方式,具有較高的特權(quán),能執(zhí)行一切命令,訪問(wèn)所有寄存器和存儲(chǔ)區(qū)。,2.3 進(jìn)程控制,具有較低特權(quán),只能執(zhí)行規(guī)定的命令, 訪問(wèn)指定的寄存器和存儲(chǔ)區(qū)。,硬件的第一次延伸。 系統(tǒng)將一些與硬件緊密相關(guān)的模塊放在內(nèi)核 中斷處理 時(shí)鐘管理 內(nèi)核在執(zhí)行某些基本操作時(shí),往往是利用原語(yǔ)操作實(shí)現(xiàn)的。,內(nèi)核與原語(yǔ),原語(yǔ),原語(yǔ)由若干條指令構(gòu)成、用于完成一定功能的
5、過(guò)程。 原語(yǔ)是“原子操作”。即一個(gè)操作中的所有動(dòng)作,要么全做,要么全不做。換言之,原子操作是一個(gè)不可分割的操作。,進(jìn)程的創(chuàng)建與撤消,用戶登錄 新作業(yè)進(jìn)入系統(tǒng) 提供服務(wù) 應(yīng)用請(qǐng)求,進(jìn)程創(chuàng)建,申請(qǐng)空白PCB 為進(jìn)程分配資源 初始化PCB 初始化進(jìn)程描述信息 初始化處理機(jī)狀態(tài)信息 初始化進(jìn)程控制信息 將新進(jìn)程插入就緒隊(duì)列,進(jìn)程的撤消,進(jìn)程正常結(jié)束 進(jìn)程異常結(jié)束 外界干預(yù),查找撤消進(jìn)程的PCB 若進(jìn)程處于執(zhí)行狀態(tài),終止之,并進(jìn)行進(jìn)程調(diào)度 若有子孫,予以終止 歸還資源 從所在隊(duì)列移出,進(jìn)程的阻塞與喚醒,請(qǐng)求系統(tǒng)服務(wù) 啟動(dòng)某種操作 數(shù)據(jù)尚未到達(dá) 無(wú)新工作可做,停止進(jìn)程的執(zhí)行 將進(jìn)程插入阻塞隊(duì)列,改變進(jìn)程在
6、PCB中的狀態(tài) 重新調(diào)度,將進(jìn)程從阻塞隊(duì)列解下 將進(jìn)程插入就緒隊(duì)列 改變進(jìn)程在PCB中的狀態(tài),檢查被掛起進(jìn)程的狀態(tài) 如進(jìn)程處于就緒狀態(tài),將進(jìn)程從就緒狀態(tài)變?yōu)榫途w掛起狀態(tài) 如進(jìn)程處于阻塞狀態(tài),將進(jìn)程從阻塞狀態(tài)變?yōu)樽枞麙炱馉顟B(tài) 如進(jìn)程正在運(yùn)行,將進(jìn)程變?yōu)榫途w掛起狀態(tài),并重新調(diào)度,檢查被激活進(jìn)程的狀態(tài) 如進(jìn)程處于就緒掛起狀態(tài),將進(jìn)程從就緒掛起狀態(tài)變?yōu)榫途w狀態(tài) 如進(jìn)程處于阻塞掛起狀態(tài),將進(jìn)程從阻塞掛起狀態(tài)變?yōu)樽枞麪顟B(tài) 若系統(tǒng)為搶占式系統(tǒng),則進(jìn)行進(jìn)程調(diào)度,進(jìn)程的掛起與激活,由于進(jìn)程是資源擁有者,因而在進(jìn)程的創(chuàng)建、撤消和切換中系統(tǒng)必須為之付出較大的時(shí)間、空間開(kāi)銷。因此,系統(tǒng)中所設(shè)置的進(jìn)程的數(shù)目不宜過(guò)多,進(jìn)
7、程切換的頻率不宜過(guò)高。這就限制了進(jìn)程并發(fā)程度的提高。,2.4 線程,進(jìn)程有兩個(gè)基本屬性 進(jìn)程是擁有資源的獨(dú)立單位 進(jìn)程是獨(dú)立調(diào)度和分派的基本單位,進(jìn)程與線程的關(guān)系,操作系統(tǒng)中的進(jìn)程和線程可以設(shè)計(jì)為以上四種,線程是進(jìn)程中的一個(gè)實(shí)體,是系統(tǒng)獨(dú)立調(diào)度和分派的基本單位,線程的定義,進(jìn)程的屬性之一,進(jìn)程和線程比較,進(jìn)程是資源的擁有者 線程不擁有資源,只有TCB及堆棧,調(diào)度 線程調(diào)度快,需要空間小。 進(jìn)程因擁有資源,調(diào)度時(shí)因負(fù)擔(dān)過(guò)重而緩慢。 并發(fā)性 在引入線程的操作系統(tǒng)中,不僅進(jìn)程之間可以并發(fā)執(zhí)行,一個(gè)進(jìn)程中的多個(gè)線程之間亦可并發(fā)執(zhí)行。 擁有資源 進(jìn)程是資源的擁有者 系統(tǒng)開(kāi)銷 進(jìn)程切換的開(kāi)銷遠(yuǎn)遠(yuǎn)大于線程切
8、換的開(kāi)銷,線程的 切換省去了資源的回收。,進(jìn)程和線程比較,線程的實(shí)現(xiàn),線程的創(chuàng)建、撤消和切換,都不利用系統(tǒng)調(diào)用來(lái)實(shí)現(xiàn)。線程與內(nèi)核無(wú)關(guān),內(nèi)核也不知道線程的存在,依賴于內(nèi)核,線程的創(chuàng)建、撤消和切換都由內(nèi)核實(shí)現(xiàn)。在內(nèi)核中有線程控制塊(TCB),內(nèi)核根據(jù)TCB感知線程的存在,并對(duì)線程進(jìn)行控制,由內(nèi)核支持的用戶線程。一個(gè)進(jìn)程可以有一個(gè)或多個(gè)輕量級(jí)線程,每個(gè)輕量級(jí)線程由一個(gè)單獨(dú)的內(nèi)核線程來(lái)支持,用戶級(jí)線程與內(nèi)核級(jí)線程,用戶級(jí)線程狀態(tài)與進(jìn)程狀態(tài)的關(guān)系,下面的例子說(shuō)明線程調(diào)度和進(jìn)程調(diào)度的關(guān)系。假設(shè)進(jìn)程A有兩個(gè)用戶級(jí)線程:線程1和線程2。其中線程2處于運(yùn)行狀態(tài),由于進(jìn)程A的某段程序正在運(yùn)行,因此進(jìn)程A也處于運(yùn)行
9、狀態(tài)。不同的是進(jìn)程A的運(yùn)行是內(nèi)核感知的,而內(nèi)核不知道進(jìn)程的兩個(gè)線程的存在。進(jìn)程A和進(jìn)程A的兩個(gè)線程的狀態(tài)如圖(a)所示,當(dāng)線程2繼續(xù)執(zhí)行時(shí),可能會(huì)發(fā)生以下幾種情況: (1)線程2中執(zhí)行的程序因需要I/O而進(jìn)行系統(tǒng)調(diào)用,這將導(dǎo)致將控制轉(zhuǎn)移給內(nèi)核,內(nèi)核啟動(dòng)I/O操作,并將進(jìn)程A阻塞,內(nèi)核將調(diào)用另一個(gè)進(jìn)程運(yùn)行。在此期間,對(duì)于線程庫(kù)管理的線程,即進(jìn)程A的線程2仍處于運(yùn)行狀態(tài)。值得注意的是,線程2的運(yùn)行狀態(tài)并不是真正意義上的被處理機(jī)執(zhí)行,而是線程庫(kù)認(rèn)為它處于運(yùn)行狀態(tài)圖(b)。 (2)時(shí)鐘中斷把控制權(quán)傳遞給內(nèi)核,內(nèi)核確定當(dāng)前正在運(yùn)行的進(jìn)程A已經(jīng)用完了它的時(shí)間片,內(nèi)核將進(jìn)程A置于就緒狀態(tài),并切換另一個(gè)進(jìn)程。
10、此時(shí),線程庫(kù)管理的線程,即進(jìn)程A的線程2仍處于運(yùn)行狀態(tài),相應(yīng)的狀態(tài)見(jiàn)圖(c)。 (3)線程2運(yùn)行到達(dá)某處,它需要進(jìn)程A的線程1所執(zhí)行的某些數(shù)據(jù),線程2進(jìn)入阻塞狀態(tài),線程1從就緒狀態(tài)轉(zhuǎn)換為運(yùn)行狀態(tài),進(jìn)程A自身仍處于運(yùn)行狀態(tài)中,相應(yīng)的狀態(tài)見(jiàn)圖d)。 在圖(b)和圖(c)所示的兩種狀態(tài)中,當(dāng)內(nèi)核把控制又重新切換給進(jìn)程A時(shí),進(jìn)程A中的線程2會(huì)恢復(fù)執(zhí)行。另外需要注意的是,執(zhí)行線程庫(kù)中的代碼時(shí)可以被中斷,可能由于線程所在進(jìn)程A的時(shí)間片用完了,也可能由于被一個(gè)高優(yōu)先級(jí)的線程所剝奪。在中斷時(shí),進(jìn)程中的線程可能處于線程的切換過(guò)程中,即正在從一個(gè)線程切換到另一個(gè)線程。當(dāng)該進(jìn)程恢復(fù)執(zhí)行時(shí),完成線程的切換,并把控制權(quán)
11、交給進(jìn)程中的一個(gè)新選中的線程。,用戶級(jí)線程與內(nèi)核級(jí)線程的比較,用戶級(jí)線程的切換,因發(fā)生在一個(gè)應(yīng)用進(jìn)程之間,因此不僅無(wú)須通過(guò)中斷進(jìn)入OS內(nèi)核,而且切換的規(guī)則也比較簡(jiǎn)單。 用戶級(jí)線程比內(nèi)核級(jí)線程切換速度快,用戶級(jí)線程在調(diào)用系統(tǒng)調(diào)用時(shí),系統(tǒng)將看成是其所在進(jìn)程的行為。而內(nèi)核級(jí)線程的系統(tǒng)調(diào)用是以線程為單位。因此比較輕裝。 用戶級(jí)線程不如內(nèi)核級(jí)線程,用戶級(jí)線程不如內(nèi)核級(jí)線程合理,在Solaris操作系統(tǒng)中,在用戶級(jí)線程和內(nèi)核級(jí)線程之間,定義了一種輕型進(jìn)程(Light Weight Process,LWP),每個(gè)LWP包含有自己的進(jìn)程控制塊,其中包括:進(jìn)程的狀態(tài)和寄存器數(shù)據(jù)等。 在一個(gè)系統(tǒng)中的用戶級(jí)線程的數(shù)
12、量可能很多,為了節(jié)省系統(tǒng)開(kāi)銷,不可能設(shè)置太多的LWP,為了使每一個(gè)用戶級(jí)線程都可以利用LWP與內(nèi)核通信,可以使多個(gè)用戶級(jí)線程多路復(fù)用一個(gè)LWP,但只有當(dāng)前連接到LWP上的線程,才能與內(nèi)核通信,其余線程或者阻塞或者等待LWP。每一個(gè)LWP都要連接到一個(gè)內(nèi)核級(jí)線程上,這樣,通過(guò)LWP可把用戶級(jí)線程與內(nèi)核級(jí)線程連接起來(lái),用戶級(jí)線程可通過(guò)LWP來(lái)訪問(wèn)內(nèi)核,但內(nèi)核所看到的是多個(gè)LWP而看不到用戶級(jí)線程。亦即,由LWP實(shí)現(xiàn)了內(nèi)核與用戶級(jí)線程的隔離,從而使用戶級(jí)線程與內(nèi)核無(wú)關(guān),而又能夠訪問(wèn)內(nèi)核。Solaris中的線程如圖所示。其中進(jìn)程1中有一個(gè)用戶級(jí)線程且綁定在一個(gè)LWP上,這個(gè)LWP與一個(gè)內(nèi)核級(jí)線程相連。
13、進(jìn)程2有三個(gè)用戶級(jí)線程,其中有兩個(gè)分別綁定在一個(gè)LWP上,這兩個(gè)LWP又分別與一個(gè)內(nèi)核級(jí)線程相連,另外一個(gè)用戶級(jí)線程,因不需要與內(nèi)核通信,因此不需要LWP的支持。進(jìn)程3中有5個(gè)用戶級(jí)線程,其中有三個(gè)多路復(fù)用兩個(gè)LWP,這兩個(gè)LWP分別與一個(gè)內(nèi)核級(jí)線程相連,一個(gè)用戶級(jí)線程不需要LWP與內(nèi)核通信,另一個(gè)用戶級(jí)線程單獨(dú)使用一個(gè)LWP與內(nèi)核通信。 當(dāng)用戶級(jí)線程不需要與內(nèi)核通信時(shí),并不需要LWP,而需要通信時(shí),便需要借助于LWP的幫助,而且每個(gè)需要通信的線程都需要一個(gè)LWP,每個(gè)LWP嚴(yán)格對(duì)應(yīng)一個(gè)內(nèi)核級(jí)線程。例如,在進(jìn)程3中同時(shí)有3個(gè)用戶級(jí)線程發(fā)出了對(duì)文件的讀、寫請(qǐng)求,這時(shí)就需要有3個(gè)LWP來(lái)予以幫助。
14、即將LWP對(duì)文件的讀、寫請(qǐng)求,發(fā)送給相應(yīng)的內(nèi)核級(jí)線程,再由內(nèi)核級(jí)線程執(zhí)行具體的讀、寫操作。如果一個(gè)應(yīng)用程序中只有2個(gè)LWP,則只能有2個(gè)用戶級(jí)線程的讀、寫請(qǐng)求被傳送給內(nèi)核級(jí)線程,余下的一個(gè)用戶級(jí)線程必須等待。,組合的方法,Solaris中的線程 在用戶級(jí)線程和內(nèi)核級(jí)線程之間,定義了一種輕型進(jìn)程(LWP) 由LWP實(shí)現(xiàn)了內(nèi)核與用戶級(jí)線程的隔離,從而使用戶級(jí)線程與內(nèi)核無(wú)關(guān),Windows 2000的進(jìn)程管理, Windows 2000中的進(jìn)程是資源分配的基本單位, Windows 2000中 的進(jìn)程作為對(duì)象來(lái)管理,可以通過(guò)句柄引用進(jìn)程對(duì)象。 為了支持Win32、OS/2、POSIX等多種運(yùn)行子環(huán)境
15、, Windows 2000 核心的進(jìn)程之間沒(méi)有任何關(guān)系(包括父子關(guān)系)各運(yùn)行環(huán)境子系統(tǒng)分別 建立、維護(hù)和表達(dá)各自的進(jìn)程關(guān)系。,Windows2000的執(zhí)行體進(jìn)程塊EPROCESSPCB,虛擬地址空間描述表 對(duì)象句柄列表 線程塊列表,Windows2000進(jìn)程的特點(diǎn): 進(jìn)程作為對(duì)象實(shí)現(xiàn) 一個(gè)進(jìn)程可含有多個(gè)線程 進(jìn)程對(duì)象與線程對(duì)象都具有同步能力,Windows2000進(jìn)程控制, Windows2000的進(jìn)程控制由各環(huán)境子系統(tǒng)相應(yīng)的 系統(tǒng)調(diào)用來(lái)實(shí)現(xiàn) Win32子系統(tǒng)用于進(jìn)程控制的系統(tǒng)調(diào)用有: CreateProcess創(chuàng)建新進(jìn)程及其主線程 ExitProcess終止進(jìn)程及其所有線程,并關(guān)閉所有的對(duì)象句柄。 TerminateProcess終止進(jìn)程及其所有線程,不關(guān)閉所
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國(guó)協(xié)同辦公行業(yè)市場(chǎng)調(diào)研及投資戰(zhàn)略規(guī)劃建議報(bào)告
- 企業(yè)員工退休合同范本
- 冷庫(kù)儲(chǔ)存生姜合同范本
- 農(nóng)村買墓地合同范本
- 會(huì)場(chǎng)責(zé)任合同范本
- 保價(jià)合同范本
- 2025年無(wú)機(jī)陶瓷膜超濾設(shè)備行業(yè)深度研究分析報(bào)告
- 安徽省壽縣眾興鎮(zhèn)方言淺談
- 會(huì)場(chǎng)綠植租賃合同范例
- 公司組建合同范例
- 顳下頜關(guān)節(jié)功能障礙的評(píng)估新技術(shù)
- 專項(xiàng)債券在燃?xì)饣A(chǔ)設(shè)施建設(shè)中的融資作用
- 四川省瀘州市2024年中考地理試卷(附解析)
- DL∕T 1785-2017 電力設(shè)備X射線數(shù)字成像檢測(cè)技術(shù)導(dǎo)則
- GE-LM2500+G4航改燃?xì)廨啓C(jī)在艦船和工業(yè)上的應(yīng)用
- 2024山東能源集團(tuán)中級(jí)人才庫(kù)選拔(高頻重點(diǎn)提升專題訓(xùn)練)共500題附帶答案詳解
- 武漢市江夏區(qū)2022-2023學(xué)年七年級(jí)上學(xué)期期末數(shù)學(xué)試卷【帶答案】-109
- GB/T 43921-2024無(wú)損檢測(cè)超聲檢測(cè)全矩陣采集/全聚焦技術(shù)(FMC/TFM)
- SL 288-2014 水利工程施工監(jiān)理規(guī)范
- 部編版八年級(jí)語(yǔ)文上冊(cè)期末考試卷
- 2024年江蘇淮陰城市產(chǎn)業(yè)投資集團(tuán)有限公司招聘筆試沖刺題(帶答案解析)
評(píng)論
0/150
提交評(píng)論