Correduetd nedir?


17

Yosemite yana ve OS X / MacOS çalışır sonraki her işletim sisteminde coreduetd arka planda demeti kimliği com.apple.coreduetd.osx ile / usr / libexec / coreduetd dan.

  • Bu süreç tam olarak ne yapıyor?
  • Bu hangi donanımda çalışıyor (yani: işlevselliği destekleniyor)?
  • Devre dışı bırakılabilir mi?
  • Nasıl devre dışı bırakılabilir?
  • Devre dışı bırakılmalı mı?
  • Devre dışı bırakılmasının (potansiyel) yan etkileri nelerdir (bağımlılıklar)?

Bu soru bir YX Sorunu olarak okunmamalı, ancak sonunda kanonik sorular listesine eklenmeye çalışılmalıdır .


Bu konuda Farklı Meta Sor üzerinde konuşmalıyız - bu aynı zamanda “çok geniş” ve “çok wiki” olarak kapatmak istediğimiz kanonik bir soru - pratik bir sorunun bulunmadığı soruların çözülmesini teşvik etmek istemiyoruz ve biz kesinlikle bir kerede bir bölüm ve bir kerede bir arka plan programı olan bir “macOS sistemi dahili” kitabı yazmak istemiyorum. Artık kapanmaktan kaçınacağım - ancak bunu sistematik olarak IMO yapmakla ilgili temel sorunlar var.
bmike

hiç Apogee Duet taktın mı?
Şerit

Yanıtlar:


14

Web'de coreduetdbir Mac'te "iOS ve macOS arasında Handoff için kullanılır" dışında bir şey yoktur.

Ne yapıyor?

Apple cihazlarınızdaki durumlar da dahil olmak üzere çeşitli sistem ve uygulama durumlarınızı takip eder.

Devre dışı bırakılabilir mi?

Teknik olarak, evet kullanarak launchctl. Yine de, ben (çok) bunu tavsiye etmiyoruz.

Devre dışı bırakılmalı mı?

Tamamen öznel bir soru. Bunun sizin için uygun olup olmadığına sadece siz karar verebilirsiniz. Yine, yapmamanızı tavsiye ederim.

Devre dışı bırakılmasının (potansiyel) yan etkileri nelerdir (bağımlılıklar)?

Potansiyel olarak, aşağıdakiler etkilenebilir :

  • İOS ve macOS arasındaki aktarım etkilenir
  • iCloud senkronizasyonu
  • Office 365 ile posta senkronizasyonu

Ancak biraz yorucu olsa da, dosyayı iOS'ta inceleyen bir iOS güvenlik araştırma projesi ( http://sans.org adresinde ) bulabildim coreduet.db. Bu düşünceyi coreduet.dbmacOS'taki dosyaya uyguladım . İşte bulduğum şey ...

coreduet.dbDosyanın bir kopyasını yaparak , önce tüm tabloların bir listesini alarak sqlite3'te inceledim

$ sudo cp /var/db/CoreDuet/coreduet.db ~/

$ sudo sqlite3 coreduet.db

sqlite> .tables
ZCDDMAIRPLANEMODEEVENT    ZCDDMFORECASTINTEGER      ZCDDMSTATISTICINTEGER
ZCDDMAPPNAMEMAPPER        ZCDDMFORECASTREAL         ZCDDMSTATISTICREAL
ZCDDMAPPSTATECHANGEEVENT  ZCDDMFORECASTSCORE        ZCDDMSTATISTICSTRING
ZCDDMATTRIBUTENAMEMAPPER  ZCDDMFORECASTSTRING       ZCDDMSTRINGATTRIBUTE
ZCDDMBACKLIGHTEVENT       ZCDDMINTEGERATTRIBUTE     ZCDDMTHERMALEVENT
ZCDDMBATTERYEVENT         ZCDDMPLUGINEVENT          ZCDDMWAKEDNESSEVENT
ZCDDMBOOKKEEPING          ZCDDMPOOL                 Z_METADATA
ZCDDMBOOTORSHUTDOWNEVENT  ZCDDMPOOLNAMEMAPPER       Z_MODELCACHE
ZCDDMDEVICEEVENT          ZCDDMREALATTRIBUTE        Z_PRIMARYKEY
ZCDDMDEVICEMAPPER         ZCDDMSCREENLOCKEVENT
ZCDDMFORECAST             ZCDDMSLEEPORWAKEEVENT
sqlite>

İzlediği birkaç olay var gibi görünüyor. Ancak, neler görebileceğimizi görmek için Z_PRIMARYKEY tablosunu açtım:

sqlite> SELECT * FROM Z_PRIMARYKEY;
1|CDDMAirplaneModeEvent|0|81
2|CDDMAppNameMapper|0|218
3|CDDMAppStateChangeEvent|0|185302
4|CDDMAttributeNameMapper|0|101
5|CDDMBacklightEvent|0|0
6|CDDMBatteryEvent|0|0
7|CDDMBookkeeping|0|1
8|CDDMBootOrShutdownEvent|0|0
9|CDDMDeviceEvent|0|0
10|CDDMDeviceMapper|0|0
11|CDDMForecast|0|0
12|CDDMForecastInteger|0|0
13|CDDMForecastReal|0|0
14|CDDMForecastScore|0|0
15|CDDMForecastString|0|0
16|CDDMIntegerAttribute|0|0
17|CDDMPluginEvent|0|0
18|CDDMPool|0|79
19|CDDMPoolNameMapper|0|66
20|CDDMRealAttribute|0|0
21|CDDMScreenLockEvent|0|0
22|CDDMSleepOrWakeEvent|0|17
23|CDDMStatisticInteger|0|0
24|CDDMStatisticReal|0|0
25|CDDMStatisticString|0|0
26|CDDMStringAttribute|0|7293
27|CDDMThermalEvent|0|0
28|CDDMWakednessEvent|0|0
sqlite>

Bu özel veritabanı sistem olaylarını izliyor gibi görünmektedir. Bir iMac üzerinde olduğum göz önüne alındığında, "BatteryEvent" veya "PlugInEvent" gibi şeyler yok mantıklı olurdu, ama "AppStateChangeEvents" olurdu. "AirplaneMode" bu bir iMac olduğu için biraz kafa karıştırıcı, ancak testler dışında genellikle WiFi'mi kapalı tutuyorum; bir noktada bu durum veritabanına eklendi.

CCDMAirplaneModeEvent'e biraz daha ilerleyerek, sadece ne zaman değil , olayın nerede gerçekleştiğini (veritabanımın 0bu alanlar için veri olmasına rağmen ) ve kim tarafından izlendiğini görebiliriz .

select * FROM ZCDDMAIRPLANEMODEEVENT;

    Z_PK        Z_ENT       Z_OPT       ZAIRPLANEMODEON  ZANONYMIZEDBEACON  ZANONYMIZEDLOCATION  ZLOCALDAYSSINCESUNDAY  ZLOCALTIME  ZLOCALTIMEQUARTERHOURSLOT  ZNETWORKQUALITY  ZUSERID     ZCREATIONDATE
----------  ----------  ----------  ---------------  -----------------  -------------------  ---------------------  ----------  -------------------------  ---------------  ----------  -------------
81          1           1           0                0                  0                    0                      80704       0                          0                0           523938304

2
Mükemmel, ama belirttiğiniz gibi: dokunmayın ...
Solar Mike

Aslında. Çok hızlı ve zaten çok iyi. Ve yerel, sabit bir iMac'te "Office 365 ile posta eşitlemesi" zaten etkileniyor mu? Bu bir sürpriz.
LаngLаngС

1
Sanırım burada yanlış yoldasın. Konsol uygulamasında arama yaparsanız, günlüğe kaydedilen birincil iletiler güç işlemedir. Benim önsez, çerçevenin özel bir çerçeve olması ve her zaman özel bir çerçeve olması ve böylece Apple'ın geliştiricilere herhangi bir API yayınlaması gerekmemesi ve dolaylı ve diğer daha kararlı API yoluyla erişilebilir olması. Zamanlanmış görevleri çalıştırmak için CPU'nun ne zaman ve nasıl uyandırılacağını bilmek için AirPlane modunu ve sistem durumunu izlemesi gerekir - donanım / CPU / GPU'daki güç bütçelerini yönetin.
bmike

1
@bmike - Sanmıyorum. AppStateChangeEvents incelendiğinde, benzersiz olmayan veriler içeren konum verileri vardır. Teorik olarak, sadece güç kullanımı olsaydı aynı olmalı. Yine de, Apple için özel bir çerçeve olduğunu kabul ediyorum.
Allan
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.