Le 11 mars 2013 à 23:25, Jean Suisse <jean.li...@gmail.com> a écrit :

> Dear All,
> 
> There may be several approaches to solve the issue I am about to describe, 
> either on the userland side or on the kernel side... or in-between, using a 
> daemon.
> 
> Current situation
> A bsd kernel extension communicates with a regular userland application 
> (called theApp). The kext gathers statistics, sends data to the user, takes 
> orders from the user, etc.. There are two-way communications initiated by 
> both sides using control sockets – There may be no market for such app, it is 
> more of investigation tool, but that's irrelevant.
> 
> Goal
> I would need to handle fast user switching, so that data sent by the kext are 
> directed towards the user that can actually handle them. This user is the one 
> "owning" the graphic interface (is there a technical word to say that?).
> 
> Issue
> When switching from user(A) to user(B) (using fast user switching for 
> instance), user(A) no longer owns the graphic interface and theApp(A) is no 
> longer able to interact with the user and give the required feedback to the 
> kext. User(B) starts theApp(B) and interacts normally with the kext. Then, 
> when switching from B to A, the same issue occurs in reverse.
> 
> Solution
> One approach would be to have theApp(A) launched by user(A) to be notified 
> when user(A) looses access to the graphic interface.
> When switching back to user(A) theApp(A) and theApp(B) would also get 
> notified.
> 
> I read this document 
> (https://developer.apple.com/library/mac/#documentation/MacOSX/Conceptual/BPMultipleUsers/Concepts/UserSwitchNotifications.html),
>  but it seems that there is some race condition occurring, maybe as a result 
> of interacting with the kernel (the kext must perform a few tasks before 
> allowing theApp(A) to disconnect and theApp(B) to connect).
> 
> Are there any other alternatives, from the userland side ?


There is an other way to track the current user: using the SystemConfiguration 
framework notification:

http://developer.apple.com/library/mac/#qa/qa1133/_index.html

-- Jean-Daniel





_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to