しかし、1980年代以降の経済停滞による軍事力の低下と物資不足に加え、ソ連崩壊と中国の改革開放によって中ソからの支援は急激に減少。1980年代末に導入したMiG-29を最後に、新鋭機の購入はおろか訓練のための燃料にも事欠く状態になり、さらに慢性的な食糧不足で士気や整備も不足して戦闘能力は著しく低下した。2000年代も、機材の老朽化や燃料不足といった課題は続くが、2003年には米軍の偵察機をMiG-29が追尾し、2009年には衛星打ち上げを守るためにMiG-23MLが出撃したり、2010年の延坪島砲撃事件の際もMiG-23が出撃し韓国軍機を狙うなどの動きを見せる。近年は、朝鮮中央テレビにおいてMiG-29やSu-25が編隊を組んで機動飛行をする様子を頻繁に公開している。2016年9月24日・25日には、元山市の元山空港で北朝鮮初の航空ショーである元山国際友好航空祝典が開催され、海外メディアにも公開された。祝典では、MiG-29やSu-25、MiG-21、MD500の演技飛行や落下傘部隊によるパフォーマンスが行われたほか、女性パイロットの存在も公表している。
その後、冷戦時代にはソ連と中国からの多大な支援と供与もあって、MiG-19/J-6やMiG-21/J-7、Il-28などをソ連や中国から輸入した。一時は錬度も高く、ベトナム戦争中の1966年から1968年には、北ベトナムの防空任務に第203航空隊が派遣された（朝鮮民主主義人民共和国のベトナム戦争参戦参照）。1966年末に派遣された第203航空隊は、ベトナム人民空軍指揮下の第923連隊として1967年5月までに配置につき、常時24名のパイロットを含む150名の兵士がベトナムに駐屯した。朝鮮人民軍空軍のパイロットは26機の米軍機を撃墜する一方、14名が戦死しており、現地に埋葬された。2002年には、墓が北朝鮮の人民軍英雄烈士墓に移され、現地には記念碑が立てられた。1969年には日本海上空でアメリカ海軍の電子偵察機を撃墜する（アメリカ海軍EC-121機撃墜事件）など、強力な戦闘力を有した。
基準運転時分は運転曲線を引いて計算される。まず、車両の性能や速度制限等の条件を満たした上で最も速く走る時の所要時間を計算する。この値をJRでは計算時分、民鉄では作図時間などという。この段階では1秒単位で求められている。この値をその路線の運行計画で用いられる時間単位に切り上げ、または切り捨てて基準運転時分を求める。時間単位は鉄道事業者や路線により異なり、5秒や10秒、15秒といった値が用いられる。京浜急行電鉄や近畿日本鉄道（同社では2007年より）では、一部の列車を1秒単位で設定している事例もある。計算時分（作図時間）を切り上げるか切り捨てるかについては、以下に記述するように、一定した方法がない。日本での運転曲線については、JRグループでは路線を通じた基準運転時分の合計値が計算時分の合計値を上回るように、適宜切り上げまたは切り捨てしている。これに対して民鉄では基本的に切り上げて求めている。また、運転曲線を引く時点でも、JRグループにおいては路線の最高速度や車両の加速性能などを限界一杯まで見て計算しているのに対して、大部分の民鉄ではある程度割り引いた数値で計算している。これらのことから、JRグループの基準運転時分は余裕をほとんど含まない限界ぎりぎりの値であるのに対して、民鉄の計画運転時間はその値そのものに余裕を含んでいる。また、ダイヤを作成する際に、JRグループでは基準運転時分に適宜余裕時分を加えて算出するのに対して、民鉄では計画運転時間をそのまま使用している。基準運転時分は、JRグループでは各停車場間ごとに、車両の形式、列車種別、発停車場と着停車場の停車と通過の別、発停車場と着停車場における使用番線などで分類されてそれぞれ定められる。車両の形式が同じであっても、編成両数やMT比が異なる場合は、性能が異なるため、別に速度種別が定められていることが多い。使用番線によって分類するのは、分岐器通過時の速度制限が番線によって異なる場合が多く、所要時間に影響するためである。これらの条件全てについて場合分けして基準運転時分を求めることはあまりに膨大な作業量となるため、実際に用いられる組み合わせに限って計算されることが多い。車両の形式や列車種別については、所要時間に大きな影響がない場合は複数の形式や種別をまとめてしまうこともある。使用番線についても主に使用する番線についてのみ計算し、それ以外の番線を使用する場合には一定の値を加算して代用することがある。各条件について最も悪い条件で計算して実際の所要時間に比べて過大な基準運転時分を求めておき、余分の所要時間は余裕時分とする場合もある。列車のスピードアップを図るために細かく査定をやり直して過大に計算されていた基準運転時分を切り詰めることもある。これらのことから、JRグループでは、ある路線での単一の区間であっても、複数の基準運転時分を有している事例が多い。一方で民鉄では、車両形式やMT比、編成両数の長さに関係なく、最も性能の劣っている車種による運転曲線をベースにして、列車種別毎に基準運転時分を算出する方法を採っており、ある路線での単一の区間における基準運転時分を列車種別毎に極力統一している事業者が多い。ただし、京浜急行電鉄のように、車種および列車種別での最高速度の違いなどの理由で、複数の基準運転時分を設けている場合がある。途中の停車場を通過する列車に関しては、出発停車場から到着停車場まで一括して運転曲線を引いて基準運転時分を求め、個別の通過停車場の通過時刻は定めないことがある。この場合でも連動駅については通過時刻を定める例が多い。逆に各駅停車の列車であっても、JR山手線のように各停車駅の時刻を定めず、主要駅のみ時刻を定めていることもある。時刻を定めている駅を採時駅、定めていない駅を非採時駅と呼ぶ。このように、ダイヤに必要とされる余裕（回復余力）をどこに持たせるかの発想や、基準運転時分を性能および速度や列車種別によって複数設定するのか、あるいは列車種別毎に極力統一するのかと言うなどの思想が、JRグループと民鉄各社で異なっている。なお、第三セクター鉄道や公営鉄道での計算方法については不明である。