Coreduetd là gì?


17

Vì Yosemite và trong mọi hệ điều hành sau này, OS X / macOS chạy coreduetd từ / usr / libexec / coreduetd với gói com.apple.coreduetd.osx trong nền.

  • Chính xác thì quá trình này đang làm gì?
  • Phần cứng này chạy trên phần cứng nào (tức là: chức năng của nó có được hỗ trợ không)?
  • Nó có thể bị vô hiệu hóa?
  • Làm thế nào nó có thể bị vô hiệu hóa?
  • Có nên vô hiệu hóa?
  • Các tác dụng phụ (tiềm năng) của nó bị vô hiệu hóa (phụ thuộc) là gì?

Câu hỏi này không nên được đọc dưới dạng Vấn đề YX mà là một nỗ lực cuối cùng để thêm vào danh sách các câu hỏi chính tắc.


Chúng ta nên nói về vấn đề này trên Hỏi khác nhau - đó cũng là một câu hỏi kinh điển cho câu hỏi mà chúng tôi muốn đóng vì chúng quá rộng rãi và trên wiki wiki - chúng tôi không muốn khuyến khích những câu hỏi thiếu câu hỏi thực tế cần giải quyết và chúng tôi chắc chắn không muốn viết một hệ thống macOS trên mạng. Cuốn sách một chương một lần và một lần một lần. Tôi sẽ không đóng cửa từ bây giờ - nhưng có những vấn đề cơ bản khi thực hiện IMO một cách có hệ thống này.
bmike

Bạn đã bao giờ cài đặt Apogee Duet chưa?
Ngõ

Câu trả lời:


14

Không có nhiều trên web như những gì coreduetdtrên Mac ngoài "nó được sử dụng cho Handoff giữa iOS và macOS."

Nó đang làm gì vậy

Nó theo dõi các trạng thái hệ thống và ứng dụng khác nhau của bạn, bao gồm các trạng thái trên các thiết bị Apple của bạn.

Nó có thể bị vô hiệu hóa?

Về mặt kỹ thuật, có sử dụng launchctl. Mặc dù, tôi (rất) không khuyên bạn nên làm như vậy.

Có nên vô hiệu hóa?

Câu hỏi hoàn toàn chủ quan. Chỉ có bạn mới có thể quyết định nếu đây là khóa học phù hợp với bạn. Một lần nữa, tôi khuyên bạn không nên.

Các tác dụng phụ (tiềm năng) của nó bị vô hiệu hóa (phụ thuộc) là gì?

Có khả năng, những điều sau đây có thể bị ảnh hưởng :

  • Bàn giao giữa iOS và macOS sẽ bị ảnh hưởng
  • đồng bộ hóa iCloud
  • Đồng bộ hóa thư với Office 365

Tuy nhiên, làm một chút điều tra, tôi đã có thể tìm thấy một dự án nghiên cứu bảo mật iOS (trên http://sans.org ) đã kiểm tra coreduet.dbtệp trên iOS. Tôi đã áp dụng suy nghĩ đó vào coreduet.dbtập tin trên macOS. Đây là những gì tôi tìm thấy ...

Tạo một bản sao của coreduet.dbtệp, tôi đã kiểm tra nó trong sqlite3 bằng cách trước tiên nhận danh sách tất cả các bảng

$ 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>

Dường như có một số sự kiện mà nó theo dõi. Tuy nhiên, để xem những gì chúng ta có thể thấy, tôi đã mở bảng Z_PRIMARYKEY:

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>

Cơ sở dữ liệu đặc biệt này xuất hiện để theo dõi các sự kiện hệ thống. Cho rằng tôi đang sử dụng iMac, sẽ có nghĩa là tôi không có những thứ như "BatteryEvent" hoặc "PlugInEvent", nhưng tôi sẽ có "AppStateChangeEvents". "AirplaneMode" hơi khó hiểu vì đây là iMac, nhưng tôi thường tắt WiFi trừ khi thử nghiệm; tại một số điểm, trạng thái này đã được thêm vào cơ sở dữ liệu.

Đi sâu hơn một chút vào CCDMAirplaneModeEvent, chúng ta có thể thấy rằng nó theo dõi không chỉ khi nào, mà là nơi sự kiện diễn ra (mặc dù cơ sở dữ liệu của tôi có 0dữ liệu cho các trường đó) và của ai.

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
Tuyệt vời, nhưng như bạn chỉ ra: đừng chạm vào nó ...
Solar Mike

Thật. Rất nhanh chóng và đã rất tốt. Và "Đồng bộ hóa thư với Office 365" đã bị ảnh hưởng trên iMac cục bộ, cục bộ chưa? Đó là một bất ngờ.
LаngLаngС

1
Tôi nghĩ rằng bạn đang đi sai đường ở đây. Nếu bạn tìm kiếm ứng dụng bảng điều khiển, các thông báo chính được ghi lại là xử lý năng lượng. Linh cảm của tôi là khung này sẽ và sẽ luôn là một khung riêng để Apple không phải xuất bản bất kỳ loại API nào cho các nhà phát triển và nó có thể truy cập được thông qua các hướng dẫn và API ổn định khác. Nó cần theo dõi chế độ AirPlane và trạng thái hệ thống để biết khi nào và làm thế nào để đánh thức CPU để chạy các tác vụ theo lịch trình - quản lý ngân sách năng lượng trên phần cứng / CPU / GPU.
bmike

1
@bmike - Tôi không nghĩ vậy. Kiểm tra AppStateChangeEvents, có dữ liệu vị trí bao gồm dữ liệu không phải là duy nhất. Về mặt lý thuyết, nó sẽ giống nhau nếu nó chỉ là xử lý năng lượng. Mặc dù vậy, tôi đồng ý với bạn đó là một khuôn khổ riêng cho Apple.
Allan
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.