Mac İçin Güvenli Çalışma Katmanı Nedir?

Mac'te yapay zeka işleri için güvenli çalışma katmanı, hem Mac'i uyanık tutan hem de pil, ısı ve işlem durumunu izleyen bir sistemdir — iş bitince veya bir güvenlik sınırı aşılınca Mac'in yeniden otomatik olarak uyumasına izin verir. İki kötü seçenek arasındaki orta yoldur: Mac'in ajan çalışırken uyuyup işi kaybetmesine izin vermek ya da onu bütün gece zorla uyanık tutup hiçbir şeyin ters gitmemesini ummak. LidRun tam olarak bu döngü üzerine kurulu — ajan çalışıyor → uyanık kal; ajan bitti ya da güvensiz → bırak, Mac uyusun — macOS 13 (Ventura) ve sonrası üzerinde uzun süren yapay zeka ve geliştirme işleri için.
Güvenli çalışma katmanı aslında ne yapar?
Güvenli çalışma katmanı üç şeyi bir araya getirir: bir uyanık-tutma assertion'ı, aktif izleme ve otomatik bırakma tetikleyicisi. Assertion kısmı işin kolay yarısı — herhangi bir araç IOPMAssertionCreateWithName'i çağırıp bir kIOPMAssertionTypePreventUserIdleSystemSleep kilidi tutabilir; macOS söyleneni yapar, o kadar. Zor olan yarı, bu tutmanın ne zaman bırakılması gerektiğine karar vermek: pil çok düştüğünde, çip ısındığında, uyanık kalmayı gerektiren iş gerçekten bittiğinde.
LidRun bu yaklaşımın bir uygulamasıdır. Bu assertion'ı tutar, pil yüzdesini ve AC/pil durumunu takip eder, macOS'tan bir termal sinyal okur ve işlem durumunu izler — ardından yapılandırılmış bir eşik aşılır aşılmaz assertion'ı bırakır. Mac gerektiğinde uyur — sizin (ya da varsayılanların) belirlediği bir kurala göre; ne şansa bırakılarak, ne de hiç uyumayarak.
İhtiyacı işe göre ölçeklendirin. Prize takılı bir masaüstü Mac'te 20 dakikalık bir derleme bunun neredeyse hiçbirine ihtiyaç duymaz — zaten uyku hiç devreye girmez. Pil gücüyle çalışan, ısınabilecek, fişten çekilebilecek ve gece 2'de kimsenin izlemediği bir laptop üzerinde altı saat süren bir yapay zeka ajan çalıştırması ise tamamen farklı bir durumdur — ve bu yaklaşımın var oluş nedeni tam olarak budur.
Mac'iniz neden çalışma ortasında uyur?
macOS, "hiçbir şey olmuyor" ile "arka planda çalışan bir ajan işlemi 40 dakikadır klavye veya fare girişi olmadan sessizce düşünüyor" arasındaki farkı bilmez. İkisi de, tam olarak bu tür bir hareketsizlikte pil tasarrufu yapmak için var olan boşta-uyku zamanlayıcısına aynı görünür. Kendi varsayılanlarına bırakıldığında, çalışma ortasında devreye girer.
Kapağı kapatmak ayrı ve daha agresif bir tetikleyicidir. Harici bir ekran bağlı değilse — ya da macOS'a kapak anahtarını görmezden gelmesini açıkça söyleyen bir şey yoksa — kapağı kapatmak, altta hâlâ ne çalışıyor olursa olsun Mac'i neredeyse anında uyutur.
İkisi de devreye girmezse, pille çalışan ve başında kimsenin olmadığı bir Mac er ya da geç kendi düşük güç kapanmasına ulaşır, pil neredeyse bittiğinde — bu temiz bir durdurma değildir, sadece güç tükendiğinde işin hangi durumda olduğuysa odur.
İlgili kılavuzMac uyanık tutma güvenlik denetleyicisi: LidRun ısınan ya da boşta kalan bir Mac'i neden uyuturÜcretsiz, yerleşik çözüm: caffeinate ve pmset
macOS, ilk durum için zaten gerçek bir çözümle geliyor. caffeinate -i python train.py bir komutu sarmalar, o komut çalıştığı sürece bir boşta-uyku-engelleme assertion'ı tutar ve komut sona erer ermez otomatik olarak bırakır — kurulum yok, yapılandırma yok. LidRun'ın kendi CLI sarmalayıcısı da aslında aynı şekli ödünç alır: lidrun -- python train.py --epochs 100 bir komutu tıpatıp aynı şekilde sarmalar; fark, LidRun'ın bu tutma aktifken onunla ne yaptığıdır — aşağıda ele alınıyor.
Kapalı kapak durumu için ücretsiz yol, harici bir ekran bağlıyken sudo pmset -a disablesleep 1 komutudur — klasik clamshell-mode numarası — işiniz bitince de kapatmak için sudo pmset -a disablesleep 0. Bu, LidRun'ın kendi Closed-Lid modunun kullandığı ile aynı alttaki ayardır; fark, LidRun'ın 1'i her zaman durdurmada, çıkışta ve bir sonraki açılışta eşleşen bir 0 ile eşleştirip bir çökmeden kalan her şeyi telafi etmesidir.
İkisi de meşrudur ve prize takılıyken yapılan kısa, başında biri olan işler için genelde ihtiyacınız olan tek şey budur. İşin gerektirdiğinden daha fazla araca uzanmayın.
Ücretsiz çözümün yetersiz kaldığı yer
caffeinate, pilinizin ne durumda olduğu hakkında hiçbir fikre sahip değildir. Saatler süren bir işi sarmalayıp uzaklaşın; pil gece 3'te %2'ye düşse bile caffeinate assertion'ı tutmaya devam eder — ne zaman bırakması gerektiğini bilecek şekilde tasarlanmamıştır.
pmset disablesleep belirli bir açıdan daha risklidir: bir oturuma özgü değil, global ve kalıcı bir sistem ayarıdır. sudo gerektirir. Ve kendini otomatik olarak 0'a geri eşleştirmez — onu ayarlayan şey çökerse ya da siz sadece unutursanız, Mac tamamen uyumayı reddederek takılı kalır, birisi geri alma komutunu elle çalıştırana kadar sessizce pilini tüketir.
Hiçbiri termal baskıyı okumaz. Hiçbiri, tutmayı gerektiren işlemin hâlâ faydalı bir iş yapıp yapmadığını ya da sessizce takılıp kalıp kalmadığını bilmez. Tutarlar; izlemezler. Bu boşluk — her iki aracın da bir kusuru değil, sadece ne için tasarlandıklarının dışında kalan bir şey — güvenli çalışma katmanının üzerine eklediği şeydir.
Güvenli çalışma katmanının izlediği üç sinyal
Pil durumu kademelidir, tek bir eşik değil. LidRun'ın varsayılanları: fişten çekiliyken %15'in altına inildiğinde bir uyarı bildirimi; %5'in altında daha güçlü bir uyarı; kabaca %4'ün altında ise — ayarlarınız ne olursa olsun %4'ün altına yapılandırılamayan sert bir taban — LidRun her uyanık-tutma tutmasını bırakır ve Mac'in uyumasını ister, onu bir yazma işleminin ortasında sert kapanmaya bırakmak yerine. Bu taban, macOS'a durumu diske yazıp temiz bir şekilde uyuyabilmesi için yeterli alan bırakmak amacıyla vardır.
Termal sinyal, ProcessInfo.thermalState'ten okunur — herkese açık bir API (nominal / fair / serious / critical), özel bir yetki gerektirmez, macOS 12'den beri kullanılabilir. Otomatik durdurma kararını asıl yönlendiren sinyal budur. Yine de gerçeklikten geride kalabilir: LidRun'ın kendi testlerinde, çantaya konmuş bir Mac zaten %24'e kadar throttle olmuşken sinyal hâlâ "fair" bildirmişti. Bu yüzden başka yerlerde — SMC sensörünün okunabildiği Mac'lerde — LidRun ayrıca gerçek SoC sıcaklığını ve CPU throttle yüzdesini kalibre edilmiş eşiklerle çapraz kontrol eder; bu, kaba işletim sistemi kategorisinin tek başına her zaman veremediği bir ikinci görüş gibidir. SoC gerçekten "critical" seviyesine ulaştığında LidRun tutmayı hemen bırakır; bu kritik durum, siz klavyeden beş dakika veya daha uzun süredir uzaktayken ya da kapak fiziksel olarak kapalıyken iki dakika sürerse, LidRun Mac'i gerçekten uyutmaya kadar yükseltir — çünkü prize takılı bir Mac kendiliğinden boşta uyumayabilir.
İşlem durumu, tutmayı doğrudan işin kendisine bağlar. Auto Mode belirli bir işlemi izler — bir Claude Code oturumu, bir Cursor ajanı, bir build — ve izlenen son işlem sona erer ermez bırakır. Bunun altında, bağımsız bir Safety Governor, Mac pille çalışıyorsa, çevrimdışıysa ve 15 dakikadır onaylanmış bir aktif iş yükü göstermiyorsa ya da 20 dakikadır onaylanmış bir iş yükü olmadan boşta duruyorsa — manuel olarak başlatılmış olsa bile — herhangi bir uyanık-tutma oturumunu bırakabilir. Bilinçli olarak yalnızca tek bir yönde fail-safe'tir: bu bırakmalar yalnızca ONAYLANMIŞ bir iş yokluğunda tetiklenir, asla bilinmeyen bir durumda değil — daha önceki bir sürüm "bilinmeyen" durumda da bırakma yapıyordu ve bu, bir Claude Code çalışması ortasında Mac'i uyuttu; bu artık zor yoldan öğrenilmiş bir kural, bir tahmin değil.
Güvenli çalışma katmanının yapmadığı şeyler
Gerçek pil tüketimini azaltmaz. Bir Mac'i uyanık ve çalışır tutmak, uyumasına izin vermekten her zaman daha fazla güç harcar — bu, LidRun dahil her uyanık-tutma aracı için geçerlidir. Amaç sıfır tüketim değildir; uyku, bir Mac'in olabileceği en verimli durum olmaya devam eder. Amaç, çalışmanın denetimsiz bir şekilde %0'a kadar tükenmesi yerine, birinin seçtiği bir tabanda durmasıdır.
Takılı kalmış bir işlemi kurtarmaz. Auto Mode ve CLI sarmalayıcısı, işlem sona erdiğinde bırakır, "ilerleme durdu" durumunda değil. Donmuş ama çökmemiş bir betik hâlâ çalışıyor olarak görünür. Uzun, başında kimsenin olmadığı bir iş için, işlem-izlemeyi bir güvenlik ağı olarak bir pil tabanı ya da zamanlayıcı ile eşleştirin — bir şeylerin gerçekten ters gittiğini fark etmesi için yalnızca işlem-izlemeye güvenmeyin.
Ve soğutmayı kontrol etmez. Bu katmanın bakış açısından termal sinyal salt okunurdur: macOS'un throttle yapıp soğuyabilmesi için Mac'i uyanık tutmayı bırakmayı seçebilir, ama — özellikle Apple Silicon'da — makineyi daha hızlı soğutmak için fanları hızlandıramaz. Mac'i havalandırmalı bir yerde tutun; güvenli çalışma katmanı, ne zaman durulacağına dair bir koruma bariyeridir, hava akımının yerine geçen bir şey değildir.
Güvenli çalışma katmanı vs caffeinate vs Amphetamine vs pmset
caffeinate macOS ile birlikte gelir, bir komutu sarmalar ve sabit bir süre boyunca ya da bir alt işlem sona erene kadar bir power assertion tutar. Tasarım gereği pil, termal ya da çevrimdışı farkındalığı yoktur — bu zaten hiç onun işi olmadı. Prize takılıyken yapılan kısa, başında biri olan işler için tam olarak vaat ettiğini yapar.
pmset disablesleep, harici bir ekranla gerçekten kapalı kapaklı çalışan bir Mac'e giden tek ücretsiz yoldur. Hiçbir oturum kavramı olmayan, kaba, sadece yönetici yetkisiyle çalışan, tüm sistemi kapsayan bir ayardır — onu neyin tetiklediğini bilmez ve kendini geri kapatmaz.
Amphetamine, zamanlamaları, tetikleyicileri ve uygulama izin listeleri olan cilalı bir menü çubuğu uygulamasıdır — oturumları günün saatine veya hangi uygulamanın ön planda olduğuna göre başlatıp durdurabilir. Yapmadığı şey, canlı pil yüzdesini bir koruma bariyeri olarak izlemek ya da oturum ortasında macOS'un termal baskısına tepki vermektir; bu, basitçe izlemek üzere tasarlandığı şeylerin dışında kalır.
Güvenli çalışma katmanı, bunların hepsinin üzerine izleme katmanını ekler: pil tabanı, termal sinyal, işlem sonlanması ve çevrimdışı/başında kimse olmama kontrolleri — hepsi tutmanın aktif kalıp kalmayacağını besler. Prize takılı 20 dakikalık bir build için caffeinate ya da Amphetamine gerçekten yeterlidir — daha fazlasına uzanmayın. Bu yaklaşım, kimsenin gerçek zamanlı izlemediği şekillerde durum değiştirebilen donanımlarda — pil, ısı, ağ — uzun, başında kimsenin olmadığı çalışmalarda kendini kanıtlar.
LidRun nereye oturuyor?
Keep Awake, Timer ve Charging-Only, LidRun'da ücretsizdir — sınırsız, deneme süresi yok, oturum sınırı yok — ve zaten çekirdek döngüyü çalıştırırlar: assertion'ı tutmak, kademeli pil eskalasyonunu izlemek (%15 / %5 / ~%4), termal sinyali okumak, ikisinden birinde otomatik durmak. Bu, kurulumdan itibaren kullanılabilen temel güvenli çalışma katmanıdır.
Auto Mode (tutmayı Claude Code veya Cursor gibi izlenen bir işleme bağlamak) ve kapalı kapaklı Clamshell modu, LidRun'ın yerleşik varsayılanları yerine varsayılan pil ve termal eşiklerini değiştirebilme yetisiyle birlikte, Pro'nun parçasıdır.
İşiniz ücretsiz şeride uyuyorsa — prize takılı ya da elle izlenen tek bir uyanık-tutma oturumu — bu gerçekten yeterlidir; kullanın. Belirli bir işleme bağlı, saatler süren, başında kimsenin olmadığı bir ajan çalışması söz konusuysa ya da kapağın kapalı kalması gerekiyorsa, işte tam da burada yaklaşımın geri kalanı (ve ücretli katman) kendini kanıtlamaya başlar. Tüm bunun arkasındaki mekanizma için fiyatlandırma dökümüne bakın ya da Safety Governor'ın kendi başlatmadığı bir oturumu nasıl bıraktığına karar verdiğini okuyun.
LidRun, işinizi kapak kapalıyken, pil ve sıcaklık koruması yerleşik biçimde çalışır tutar.
LidRun zaten sizde mi? Kurulum rehberini okuyun →
LidRun'u yeni mi tanıdınız? Fiyatlara bakın →
Sık sorulanlar
İş bitince ya da yapılandırılmış bir güvenlik eşiği aşılınca otomatik olarak bırakan; pil, ısı ve işlem durumunu da izleyen bir uyanık-tutma sistemidir. Tutma artı izleme artı otomatik durdurmanın birleşimidir — makinede gerçekte ne olduğuna bakmaksızın süresiz tutan basit bir wake lock değildir.
Tam anlamıyla değil. caffeinate -i <command> bir power assertion tutar ve sarmalanan komut sona erdiğinde bırakır, ama çalışırken pil yüzdesini asla kontrol etmez ya da macOS'un termal sinyalini okumaz. Prize takılıyken yapılan kısa, başında biri olan işler için sağlam, meşru bir seçimdir. Saatler süren, başında kimsenin olmadığı bir çalışma için ise makineyi tam olarak gece boyunca önem taşıyan sinyallere karşı korumasız bırakır.
Evet — çalışmak ve bir assertion tutmak her zaman uykudan daha fazla güç harcar; hiçbir uyanık-tutma aracı bunu değiştiremez. Güvenli çalışma katmanının hedefi sıfır tüketim değil, denetimli tüketimdir: oturum, denetimsiz bir şekilde %0'a inip sert kapanmaya gitmek yerine bir pil tabanında durur.
İşlem-izleme (Auto Mode ya da CLI'nin lidrun -- <command>'ı), işlem sona erdiğinde bırakır — takılı kalmış ama çökmemiş bir işlem hâlâ çalışıyor sayılır, bu yüzden tutma aktif kalır. Uzun, başında kimsenin olmadığı işler için, bir takılmayı fark etmesi amacıyla yalnızca işlem-izlemeye güvenmek yerine onu bir güvenlik ağı olarak bir pil tabanı ya da zamanlayıcıyla eşleştirin.
Pil yüzdesi ve AC/pil durumu (kademeli: %15'te uyarı bildirimi, %5'te güçlü uyarı, her zaman her tutmayı bırakan ~%4 sert taban), macOS'un termal sinyali (nominal/fair/serious/critical, sensörün okunabildiği yerlerde gerçek SMC sıcaklığıyla çapraz kontrol edilir) ve — Auto Mode ya da CLI sarmalayıcısı aktifken — tetikleyen işlemin hâlâ çalışıp çalışmadığı. Bağımsız bir Safety Governor da, pille çalışırken 15-20 dakika boyunca onaylanmış bir aktif iş yükü olmayan bir oturumu bırakabilir, ama asla bilinmeyen bir durumda değil.
macOS, SoC'nin "critical" durumda olduğunu bildirdiğinde LidRun uyanık-tutma tutmasını hemen bırakır. Bu kritik durum, siz klavyeden beş dakika veya daha uzun süredir uzaktayken ya da kapak fiziksel olarak kapalıyken iki dakika sürerse, LidRun Mac'i gerçekten uyutmaya kadar yükseltir; çünkü prize takılıyken kendiliğinden boşta uyumayabilir. Bu, uzun süreli throttle riskini azaltmaya yardımcı olur; tüm ısı birikimini önlemez ya da belirli bir sıcaklık tavanı vaat etmez — Mac'i havalandırmalı tutun.
Her iki çip ailesi için de evet. LidRun, macOS 13 (Ventura) ve sonrasını hedefler; termal sinyal (ProcessInfo.thermalState) ve power assertion API'si hem Intel'de hem her Apple Silicon neslinde kullanılabilir. Gerçek SMC sıcaklığı çapraz kontrolü, belirli bir Mac'in sensörünün neyi açığa çıkardığına bağlıdır ve modele göre değişir.