34 votes

Qu'est-ce que le coreduetd ?

Depuis Yosemite et dans tous les systèmes d'exploitation ultérieurs, OS X/MacOS exécute coreduetd depuis /usr/libexec/coreduetd avec le bundle-id com.apple.coreduetd.osx en arrière-plan.

  • Que fait exactement ce processus ?
  • Sur quel matériel fonctionne-t-il (c'est-à-dire : sa fonctionnalité est-elle prise en charge) ?
  • Peut-il être désactivé ?
  • Comment peut-on le désactiver ?
  • Faut-il le désactiver ?
  • Quels sont les effets secondaires (potentiels) de sa désactivation (dépendances) ?

Cette question ne doit pas être lue comme un problème YX mais comme une tentative d'ajouter éventuellement au liste de questions canoniques.

0 votes

Nous devrions en parler sur Posez des questions différentes à Meta - c'est aussi une question canonique pour une question que nous voulons fermer comme "trop large" et "trop wiki" - nous ne voulons pas encourager les questions qui manquent d'une question pratique à résoudre et nous ne voulons certainement pas écrire un livre "MacOS system internals" un chapitre à la fois et un démon à la fois. Je vais m'abstenir de conclure à partir de maintenant - mais il y a des problèmes fondamentaux à faire cela systématiquement IMO.

0 votes

Avez-vous déjà fait installer un Apogee Duet ?

5 votes

Je ne suis pas du tout d'accord avec l'idée de se débarrasser de ce genre de questions. J'ai répondu à des questions ici et je souhaite certainement contribuer à la création d'un manuel interne sur les systèmes Mac OS. La question n'est pas trop basique ("comment fonctionne la souris") et est suffisamment spécifique. En d'autres termes, je serais contre les questions qui font d'Ask Different un site d'informatique 101 et qui enterrent Ask Different sous des questions répétitives mal posées.

32voto

Douglas Points 10417

Il n'y a pas grand-chose sur le web quant à ce que coreduetd fait sur un Mac autre que "c'est utilisé pour le Handoff entre iOS et MacOS".

Que fait-il ?

Il assure le suivi des différents états de votre système et de vos applications, y compris les états de vos appareils Apple.

Peut-il être désactivé ?

Techniquement, oui, en utilisant launchctl . Cependant, je ne vous le recommande (fortement) pas.

Faut-il le désactiver ?

Question totalement subjective. Vous seul pouvez décider si c'est le cours qui vous convient. Encore une fois, je vous recommande de ne pas le faire.

Quels sont les effets secondaires (potentiels) de cette désactivation ? (dépendances) ?

Potentiellement, les éléments suivants peuvent être affectés :

  • Le transfert entre iOS et MacOS serait affecté.
  • synchronisation iCloud
  • Synchronisation du courrier avec Office 365

Cependant, en faisant un peu de recherche, j'ai pu trouver un Projet de recherche sur la sécurité d'iOS (sur http://sans.org ) qui a examiné le coreduet.db sur iOS. J'ai appliqué ce raisonnement à la coreduet.db sur MacOS. Voici ce que j'ai trouvé...

Faire une copie de la coreduet.db j'ai examiné le fichier dans sqlite3 en obtenant d'abord une liste de toutes les tables.

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

Il semble qu'il y ait un certain nombre d'événements dont il garde la trace. Cependant, pour voir ce que nous pouvions voir, j'ai ouvert la table 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>

Cette base de données particulière semble suivre les événements du système. Étant donné que je suis sur un iMac, il serait logique que je n'aie pas de choses comme "BatteryEvent" ou "PlugInEvent", mais j'aurais "AppStateChangeEvents". "AirplaneMode" est un peu déroutant car il s'agit d'un iMac, mais je garde généralement mon WiFi éteint sauf pour les tests ; à un moment donné, cet état a été ajouté à la base de données.

En examinant de plus près l'événement CCDMAirplaneModeEvent, nous constatons qu'il permet de savoir non seulement quand, mais aussi l'événement a eu lieu (bien que ma base de données ait 0 données pour ces champs) et par qui.

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

4 votes

Excellent, mais comme vous le soulignez : n'y touchez pas...

0 votes

En effet. Très rapide et déjà très bon. Et "la synchronisation du courrier avec Office 365" est déjà affectée sur un iMac local et stationnaire ? C'est une surprise.

1 votes

Je pense que vous êtes sur la mauvaise piste ici. Si vous cherchez dans l'application console, les principaux messages qui sont enregistrés sont la gestion de l'énergie. Mon intuition est que le cadre est et sera toujours un cadre privé afin qu'Apple n'ait pas à publier une sorte d'API pour les développeurs et qu'il sera accessible via l'indirection et d'autres API plus stables. Il doit suivre le mode AirPlane et l'état du système pour savoir quand et comment réveiller le CPU pour exécuter des tâches programmées - gérer les budgets d'énergie sur le matériel / CPU / GPU.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X