indows 10的任務管理器相對老版本的Windows系統有了不少的改變,但是對任務和進程管理還是顯得不足。下面介紹一款第三方的軟件,可以進行深入的對Windows 10進程進行管理。百度搜索Process lasso進入官網下載相關的軟件。
開始安裝Process lasso,需要注意的是在安裝的過程中,建議不要去除"顯示啟動選項"的勾選
Process lasso軟件啟動時可以設置在當前的用戶還是所有的用戶下自動啟動。
提高程序運行效率,提升進程級別
電腦程序運行緩慢,主要的原因可能為多個程序占用CPU導致。通過修改程序的I/O優先級,來提升成尋的運行效率。這樣Process lasso軟件會根據設置來判斷占用資源的進程優先級別,來提升高優先級別的程序。
如果你覺得正在運行的程序緩慢,我們可以通過鼠標的右鍵點擊該程序的進程,通過鼠標右鍵的菜單,將程序進程的優先級別設置到"高級"或者"實時(最高)"級別。這樣就提高其運行級別,從而提高運行效率。
提升游戲的運程效率的方法,找到游戲的運行進程名稱,右擊該游戲進程將其從"Probalance中排除",在將優先級別設置為高!
強行中斷惡意頑固程序進程。
在使用計算機的時候,難免會出現安裝運行一些頑固的程序,無法正常使用Windows的任務管理器來中斷或殺掉該程序。使用Process lasso軟件可以中斷該程序進程。
針對反復運行的頑固程序,可以使用黑名單進程,讓程序無法運行。這樣就無需其他的設置。
可以通過菜單上的"選項"-"控制"-"設置進程黑名單"來進行設置。如:不希望onedrive運行,只需要將onedrive的進程名稱輸入到黑名單中即可。在這里的名稱設置中可以使用通配符。
保護進程,防止任務中斷
如果需要保護某個程序,避免一直處于運行狀態的程序被意外結束。可以對程序進程進行保護。右鍵點擊進程程序,選擇"直續運行(自動重啟)"
程序內存優先級
右鍵點擊程序進程,選擇"更多"-"內存優先級"來進行調整。
Process lasso軟件還有更多的設置,如I/O優先級別,整理虛擬內存,還可以通過該軟件來限定程序的運行實例。總得來說使用Process lasso軟件,可以使你的Windows 10進程管理變得得心應手
目錄
1 閏秒,程序員不能承受之重
2 閏秒從何而來
3 閏秒處理方案
4 歷史影響
5 取消閏秒
國際地球自轉服務(IERS)宣布 2024 年世界時將不增加閏秒。對計算機系統和維護它的程序員而言,這是一個好消息。 最遲不晚于 2035 年前,閏秒就會被徹底廢除。沒有辦法解決閏秒引發的問題,解決閏秒本身就不再有問題,畢竟人類對多出來的這一秒并無體感。本文將為你介紹閏秒的來源及其影響,并介紹各類系統常見的閏秒處理方法。
01
閏秒,程序員不能承受之重
人類對閏秒的調整體感上不可知,但對需要精準計時的計算機系統和互聯網來說,簡單粗暴的“加一秒”卻沒有好處,全是問題。
1972 年被首次引入至今,一共增加過 27 個正閏秒,每一次增加閏秒,就會引發軟件行業的問題。
2012 年閏秒的引入讓 Reddit 系統宕機一個半小時;
同年澳大利亞航空公司的辦理系統也宕機數小時,被迫人工檢查登機;
2017 年 Cloudflare 部分客戶服務器因此離線;
……
為什么會有閏秒的存在?閏秒為什么會成為一個技術難題?目前我們都是怎么處理閏秒問題的?取消閏秒未來會帶來哪些影響?本文將詳細為你解讀。
02
閏秒從何而來
世界上有幾種計量時間的方式:
世界時(UT1):是一種天文計量的方式,天文學家通過觀測地球的自轉,并將自轉一周的時間(一天)等分為86400份,每份為一秒,受潮汐等因素的影響,地球自轉一周的時間并不是恒定的,這也是造成閏秒現象的直接原因。
原子時(TAI):由于上面描述的世界時并不穩定,物理學家用更為穩定的量子計量的方式來統計時間,1967年,國際計量大會用銫133(Cs133)原子基態的兩個超精細能級之間的躍遷所對應輻射的9192631770個周期所持續的時間定義為1秒,這個是目前最精確的時間計量方式,其誤差為1400000年一秒,基本可忽略不計。
協調世界時(UTC):又稱世界標準時間或世界協調時間,UTC 以 TAI 為基礎,又要兼顧 UT1,當 UTC,和 UT1 之間的偏差接近1秒時,國際地球自轉和參考系服務(IERS)會提前6個月公布下一次閏秒的時間。
我們將世界絕大多數地方時區的基本時間稱為協調世界時,即 UTC。它源自分布在世界一些國家的大量原子時鐘。地球的自轉并不是非常恒定的,有時會有一些變化,平均自轉速度會緩慢下降。這就是為什么會在 UTC 時標中插入所謂閏秒,它們可將 UTC 時間進程調整到真實地球自轉時間。
為什么會多出這一秒呢?它的存在是因為決定晝夜更替的地球繞軸自轉會在很長的一段時間內慢下來,主要是由月亮-太陽引力造成。另外,地球也受其內部(地核、地幔)和外部(氣候、海洋)構成影響。目前,時間主要由分屬幾個國家的 250 臺原子時鐘測量,這些原子鐘是通過測量原子的能量轉換水平工作。使用這些時鐘計算 UTC,同時因為這個時間測量原理周期性地與地球不同步,因此必須使用閏秒進行校正。另外,我們必須考慮到現在的一天比 1820 年的一天要長 2 毫秒。不出所料,地球自轉慢慢就與 UTC 不同步了。
國際地球自轉服務局 IERS 測量的是真實地球自轉,并決定何時插入閏秒。插入閏秒一般總是在某個月的最后一天進行,首選六月或十二月的 UTC 午夜時間。過去每次添加閏秒都是在六月或十二月進行。是否添加閏秒的聲明,會由 IERS 在其 Bulletin C 中發布。目前,在可能添加閏秒日期前半年會公布 Bulletin C 。
因為閏秒是在全世界同時插入,插入閏秒的本地(民用)時間取決于本地時間與 UTC 之間的偏差,例如:2015年7月1日發生閏秒時,在時區 UTC+8h(北京時間) 中,閏秒會在時鐘顯示午夜后 8 小時的時候插入。
閏秒時計算北京時間的標準方法為:
2015-07-01 07.59.57
2015-07-01 07.59.58
2015-07-01 07.59.59
2015-07-01 07.59.60 <-- 閏秒
2015-07-01 08.00.00
2015-07-01 08.00.01
2015-07-01 08.00.02
如果系統時鐘采用國際原子時(TAI),并使用正確的時區,那么就會列出 23:59:60。但因為在 Unix 的 UTC 使用中不存在 23:59:60,Linux 內核會采用倒回一秒的方法在 0:00 UTC 后第一次時鐘更新時插入閏秒。在本地時間計時中,根據不同的時區偏差,比如 UTC+8h,在 TencentOS Server 系統中,你會觀察到以下現象:
2015-07-01 07:59:58.000
2015-07-01 07:59:58.500
2015-07-01 07:59:59.000
2015-07-01 07:59:59.500
2015-07-01 08:00:00.000 <-- 插入閏秒
2015-07-01 07:59:59.000
2015-07-01 07:59:59.500
2015-07-01 08:00:00.000
2015-07-01 08:00:00.500
IERS 確定閏秒后,一些時間傳播服務還會發布閏秒通知。這包括德國長波發射機 DCF77 和衛星巡航系統 GPS 示例。因此,可解碼從那些系統獲取信號的接收器也可以解碼閏秒通知。如果在所應用協議中包含閏秒信息(例如接收器傳送的時間字符串),則從那些接收器讀取時間的應用程序也可以確定閏秒通知。請注意,時間代碼接收器只能將閏秒通知轉發到應用程序,同時正確計時。正確處理閏秒是應用程序和(/或)操作系統的任務。
從1972年到2020年,平均每21個月就插入一次閏秒。然而,間隔是非常不規則的,而且明顯在增加。在1999年1月1日至2004年12月31日的六年中沒有閏秒,但在1972-1979年的八年中有九個閏秒。自1972年協調世界時正式使用至今,全球已經實施了27次正閏秒調整,最近一次的閏秒調整是格林尼治時間2016年12月31日。從協調世界時正式使用以來,地球自轉一直處于不斷減慢的趨勢,因此迄今為止的閏秒都是正閏秒。但相關科研發現,自2020年年中以來,地球自轉速率呈現加快趨勢,這意味著未來也可能會出現負閏秒。目前 TAI 與 UTC 的秒差為37:
# Value of TAI-UTC in second valid beetween the initial value until
# the epoch given on the next line. The last line reads that NO
# leap second was introduced since the corresponding date
# Updated through IERS Bulletin 64 issued in July 2022
#
#
# File expires on 28 June 2023
#
#
# MJD Date TAI-UTC (s)
# day month year
# --- -------------- ------
#
41317.0 1 1 1972 10
41499.0 1 7 1972 11
41683.0 1 1 1973 12
42048.0 1 1 1974 13
42413.0 1 1 1975 14
42778.0 1 1 1976 15
43144.0 1 1 1977 16
43509.0 1 1 1978 17
43874.0 1 1 1979 18
44239.0 1 1 1980 19
44786.0 1 7 1981 20
45151.0 1 7 1982 21
45516.0 1 7 1983 22
46247.0 1 7 1985 23
47161.0 1 1 1988 24
47892.0 1 1 1990 25
48257.0 1 1 1991 26
48804.0 1 7 1992 27
49169.0 1 7 1993 28
49534.0 1 7 1994 29
50083.0 1 1 1996 30
50630.0 1 7 1997 31
51179.0 1 1 1999 32
53736.0 1 1 2006 33
54832.0 1 1 2009 34
56109.0 1 7 2012 35
57204.0 1 7 2015 36
57754.0 1 1 2017 37
03
閏秒處理方案
3.1 運行 NTP 的系統
系統如果使用 NTP(網絡時間協議)守護進程(ntpd)將其本地計時與 NTP 服務器同步,則都應自動進行閏秒調整。進行閏秒調整的前一天,NTP 服務器應通知其客戶端第二天的 23:59:59 UTC 會發生發生閏秒,Linux 內核應通過兩次顯示第 60 秒或徹底刪除它,以便添加或者刪除額外一秒。因此,在閏秒調整期間,運行 NTP 的系統應有如下計時顯示:
2015-06-30 23:59:59 UTC
2015-06-30 23:59:59 UTC
2015-06-30 00:00:00 UTC
發生閏秒時,內核會在系統 log 中寫入信息:
Jul 1 07:59:59 TENCENT64 kernel: [579201.951291] Clock: inserting leap second 23:59:60 UTC
使用 ntpdate 命令方式,與 ntp 服務器進行時間同步的系統,將不會通過 ntp 服務器接收到閏秒通知,而是在系統管理員指定的時刻與ntp服務器進行時間同步。例如,系統管理員設定每小時的第52分與 ntp 服務器進行時間同步,那么在7月1日08:00 CST 到09:52之間,系統時間與 ntp 服務器時間會相差1秒(快1秒)。
3.2 運行 PTP 的系統
PTP(精確時間協議)中交換的時間戳通常采用不包含閏秒的 TAI(國際原子時);但 ptp4l 和 phc2sys 將設置內核標簽,插入閏秒以便系統時鐘繼續以 UTC 運行。然后該內核就可以正常插入閏秒。
3.3 未運行 NTP 或者 PTP 的系統
默認情況下,不使用 NTP 或者 PTP 同步其計時的 Linux 系統不會修正閏秒,且這些系統報告的時間與修正閏秒后的 UTC 時間有一秒鐘的差別。閏秒發生后應手動重置時鐘。
你還可以將 tzdata 更新至最新版本,將 /usr/share/zoneinfo/right 目錄層級中的正確文件復制到 /etc/localtime,并將時鐘重置到正確的本地時間,以便將這些系統配置可正確報告時間。 /usr/share/zoneinfo/right 中的文件包含自該世紀開始,從 1970 年 1 月 1 日 00:00:00 UTC 發生的所有閏秒修正的本地時間信息。 /usr/share/zoneinfo 中的其他時區文件未添加閏秒修正。從1972年至今,共添加了 27次閏秒。
例如:如果某個系統位于中國時區,你可以將其重新配置為通過運行以下命令報告閏秒修正時間,
cp /usr/share/zoneinfo/right/Asia/Shanghai /etc/localtime
例如在 TS2 系統中,tzdata 包的版本為 tzdata-2015a-1.tl2.noarch,執行完上述拷貝后,則會在閏秒發生時間2015年7月1日8點自動插入閏秒。
3.4 windows 系統
早期的 Windows 版本(Win10版本以前) 時間服務并不表示 Leap 指標的值,當 Windows 時間服務接收到的數據包,包括閏秒。因此,閏秒發生后,正在運行 Windows 時間服務的 NTP 客戶端會比實際時間快一秒。這種時間差異在下次同步時解決。
從 Windows 10 Redstone 5 和 Windows Server 2019 起,微軟的操作系統能以更精確、UTC 兼容和可追蹤的方式處理閏秒。不過從2017年至今,沒有發生過閏秒了。
04
歷史影響
對于日常生活而言,正常的上班、下班、工作、學習,生命中偏差的這一秒無關痛癢。然而閏秒對于精確要求時間的行業如航空、航天、軍工等,會產生較大影響。對于服務器清一色 Linux 系統的互聯網行業而言,閏秒可能會造成機器 CPU 突然增高,機器宕機、對應的服務掛掉。隨著 Linux 的普遍使用,閏秒的影響也被越來越多的被關注。
歷史上,因為 Linux 內核的一些問題,閏秒對系統造成多次影響。比如 CPU 利用率高會給生產環境帶了不少挑戰。2012年實施閏秒時,國外不少知名網站出現了臨時服務中斷。當2015年閏秒再度來臨時,工程師們修復了部分2012年出現的問題,但卻東窗事發——發現了新的問題。后續亦是如此。閏秒讓互聯網企業如鯁在喉。
這里簡單列舉一下在 Linux 內核版本中曾因閏秒所引發的各種問題:
05
取消閏秒
5.1 為何取消閏秒
對閏秒最為敏感的莫過于計算機相關領域。由于閏秒的出現沒有固定規律,對應的時間調整無法從一開始就寫在計算機程序里。在萬物互聯時代,很多領域都依托計算機網絡傳輸信息,實施閏秒也會影響航空、通信、金融及其他需要精準對時的領域。
此前 Meta 公司兩名工程師發文稱:“閏秒是一種弊大于利的冒險做法,我們認為現在是時候引入新技術來取代它了。”這一表態獲得了互聯網大廠的廣泛贊同。
5.2 取消閏秒的后續可能
負責協調世界時的國際計量局(BIPM)表示,科學家和政府代表18日在法國舉行的一次會議上投票決定到2035年取消閏秒。BIPM 時間部門負責人帕特里齊亞·塔維拉表示,這項“歷史性決定”將允許“秒數連續流動,而不會出現目前由不規則閏秒造成的不連續性“。
閏秒是目前把世界時和國際原子時聯系起來的手段。由于世界時是基于地球自轉確定的,又稱天文時或太陽時。沒有閏秒意味著人們使用的時間與地球自轉、太陽位置不關聯,時間和天文學呈現割裂狀態。
第27屆國際計量大會決議要求多機構協商,提出一個可以將協調世界時持續至少百年的新方案并制定實施計劃,納入下一屆大會的決議草案中。根據決議,閏秒將暫時繼續正常添加。但到2035年,世界時和國際原子時之間的差異將被允許增長到大于一秒的值。
也許解決這個問題的可能方法是讓世界時和國際原子時之間的差異增加到一分鐘,但專家估計調整時長在50到100年之間。而有提議指出,無需在時鐘上增加閏分鐘,而是將某一天的最后一分鐘變為需要兩分鐘;也有人建議停止校正,同時公布世界時和國際原子時之間不斷增長的時刻差。
作者:陶松橋
來源-微信公眾號:騰訊云開發者
出處:https://mp.weixin.qq.com/s/LsHoTiwuQpxYoN5kKmTWug