Because dealing with multiple profiles and/or different profile types is a fucking huge giant pain the ass and a monumental amount of work! Xbox has local, guest, live silver, and live gold accounts. Dealing with all the different profiles and switching between is a nightmare. Urgh, no thanks.
At least two of the three most prominent smart phone roms are backed by operating systems that have long histories of (more or less successful) profile switching. It might in fact be a difficult problem, but it's one that has serviceable solutions and has for some time.
No, difficult for the users, not the operating systems.
Operating systems have had user switching for years. But I'll bet only a small minority of Mac users even know this is possible, and even fewer have ever used it.
Sure. If you're willing to log out of your smart phone context, and restart any needed tools in the new guest context whenever you hand over your phone.
Oh, I'm sorry, you wanted instantaneous user switching? That's a smidgen harder than the 40-year-old solutions :)
> Oh, I'm sorry, you wanted instantaneous user switching? That's a smidgen harder than the 40-year-old solutions :)
These OS have been able to run multiple concurrent user sessions for 40 years, and fast user switching has been a feature of all desktop OS since Windows 9x went the way of the dodo.
There are specific issues (core services of these systems are probably — sadly — coded with the idea that a single user is running), but nothing which should be hard to fix.
The biggest issue is resource limitations - multi-user systems require an abundance of resources that phones don't have.
What about the memory overhead of concurrent sessions?
Who gets to run background processes, and when are they terminated? Because neither CPU nor battery life exist in abundance.
What happens to incoming calls/e-mails/texts/notifications? (Especially for the guest account, where you don't have a second phone number for that account)
What happens to e.g. alarms set by user1 if user2 is logged in?
Which settings are shared, which aren't? And if your phone storage is encrypted, how do you handle shared settings? What about privacy? Can user1 e.g. record GPS signals even if user2 is logged in? If not, what about "Find my phone" features?
Sure, conceptually it's a solved issue. Practically, there are innumerable details to be figured out.
I thought that iOS and/or Android gave each App its own user account in order to sandbox permissions between apps, so that they can't overwrite each other's files. If all of the user data for an app is owned by that app's uid, then wouldn't this allow someone else running that app to somehow gain access to user data from another 'actual' user?
E.g.
App1 has uid 100
User1 has uid 101
User2 has uid 102
If all userdata for App1 is owned by uid 100, User1 or User2 could potentially used App1 to gain access to the other user's app-specific user data.
(I'll admit that I'm not an iOS or Android programmer, so I may be a bit out of my depth here.)
This is a good example of how HN has gone down the tubes. I've been downvoted to -1 based solely on a post where I raised a possible security concern. I admitted that I wasn't fully versed, but I expected someone to correct my if I was wrong. Instead, I'm downvoted, but no one has bothered to actually post useful information. Am I wrong? Did someone just 'not like the tone' of my post for some strange reason? Who knows? No one is talking.
I mean fast user switching on a resource-constrained portable device. There's a bit of a difference in terms of how to do it. (See also my above post listing some of the issues)
And your XP desktop actually worked well with fast user switching? On an XP minspec machine? Or even recommended specs? There was a reason it was Powertoys only.
Not to mention that your XP machine had a HDD as a backing store for virtual memory. You could safely page out an entire session. Not so for phone OS's, AFAIK. (I know iOS doesn't have a backing store. Haven't checked Android, but I seriously doubt it)
Not to mention we've only very recently reached specs that make this doable. The iPhone 3GS (not that old) did have a 600MHz processor and 256MB of RAM. That's pretty close to an XP recommended spec, IIRC.
Given that your XP machine wasn't running on a battery, and wasn't busy in the background doing phone-y things, you can see where resources are getting tight.
Phones are just getting there, spec-wise. I'm sure sooner or later we will see a guest mode. The 'when', IMHO, hinges more on solving the UX issues, since specs always march on.
Nope. While on Windows, Linux, and OS X you can have two remote users logged in and independently using tty windows, they all must share the same GUI window.
X (the service commonly providing the *nix GUI) was pretty much built with this in mind; Linux has had an implementation of X that has provided this since at least the mid-90s.
Windows has had this on the server since at least Windows Server 2003, and has also introduced it to the "consumer" market in Windows 7.
(I'd be happy to find out whether OS X supports this or not.)
I tried to do this couple years ago for Linux, asked around, and was told this was not possible for Linux.
Apparently I was misinformed. I'm happy to be wrong about it. Can you point me to instructions for doing it for Ubuntu?
I have Windows XP, and have had 2000, NT, 98, 95, etc., and none of them could do it.
I'm glad to see that finally this "40 year old technology" is getting onto desktops in the last year or so.
Do note that there are 2 ways to share a graphical user interface on X.
The first way is by remotely running a program on your own Xserver. The programs' processes occur on the remote connection and are sent down the SSH tunnel and show up on your display. This is the common way in Linux.
The second way is by an older program from the Windows world: VNC. VNC takes a local, running display (example: my gui) and allows someone else to view/control it at the same time I do. In this method, you both fight over the mouse and keyboard inputs.
There are several others as well. There are a couple different ways to make a "multi-head" setup in linux, which is what it sounds like. Multiple monitors/keyboards/mice all attached to the same computer allowing multiple people to run X at once independently.
Er, what? I regularly use Windows remote desktop and have my own full GUI session, independent of other logged in users. This has been around for many years.
IOS is really a stripped-down Unix-variant (BSD). You know, Unix, the world's most ubiquitous operating system, that supports multiple user accounts out of the box.
And whose name, in fact, stems from "uni-plexing" -- it was an operating system designed to support two users, so that Dennis and Ken could play Space Travel. A weak pun on "Multics" (multiplexing operating system).
That looks like a completely different issue... Are the local, live silver and live gold account all yours? If they are, that does look like a nightmare...
It's for different people, not for you that an account should be created. I also would like that in all the *pads. I'd like to split the history and logins of each person using my touchpad. It's a mess when 2+ people start using it.
Because dealing with multiple profiles and/or different profile types is a fucking huge giant pain the ass and a monumental amount of work! Xbox has local, guest, live silver, and live gold accounts. Dealing with all the different profiles and switching between is a nightmare. Urgh, no thanks.