Apple WWDC 2014: Tim Cook Unveils Yosemite
An anonymous reader writes "Apple's Worldwide Developers Conference (WWDC) has started, and OS X 10.10, officially named Yosemite, and iOS 8 have been officially unveiled. Craig Federighi, senior vice president of software engineering, also highlighted iCloud Drive. Although a little late to the party, Apple hopes to compete with the likes of Dropbox and Google Drive."
Yosemite will feature a new icon set. A bigger news is Swift, a new, safe programming language with type inference. Anyone who is able to find a language reference manual (supposedly available on iBooks) will get a lot of mod points.
Kind of a "meh" series of announcements. The Mac interface will look more like the phone interface. (How'd that work out for Microsoft?) FTP that goes through Apple's servers. A new GUI theme. Some other routine GUI churn. A medical interface app with sensors. That's it?
Last week, Apple execs were promising big announcements, the biggest since the Jobs era. This is all they've got? From the hype, you'd expect a competitor for Google Glass, or a VR system, or a rugged phone with no connectors and inductive charging, or an AI system that runs your life, or NSA-proof security, or something really new, like a direct brain interface or displays in contact lenses.
Do you know C? Any desire to implement such a feature in Linux? Seems like a good idea, and your claim of dramatic performance improvement has got me thinking. Perhaps this would be a good way to dip my toes into kernel hacking, and perhaps I'm not the only one thinking that.
Yup -- I even wrote an experimental real-time kernel for the Atmel AT90 a few years back.
To be honest, I have considered it, as I'm also a Linux user (OS X makes a fantastic interface into a bunch of headless Linux servers that do the grunt work around here), and I'd love to have this support there as well. I currently have 285 processes running on my iMac, and while I'm not really putting a lot of memory pressure on the system (7.97GB used out of 8GB, with only 8.76GB of virtual memory active and no swap), however OS X has still managed to compress 395.6MB of memory, and I haven't noticed a thing. Indeed, it's probably saved me from having to page to disk at the moment to the tune of roughly 200MB. That's a lot of pages available for use pretty quickly without the need to load them from disk first.
What's stopping me? Time. I used to do a lot of Open Source software development, and have had a few projects of my own over the years that have seen some moderate success, and would like to contribute more to the community -- but that was before I had a wife, and before we had a child who has a lot of medical needs. After a long day of commercial application development, and driving my daughter from one appointment to another six days a week, my hobbies currently reflect my desire to get out from behind the keyboard and do things outdoors.
I lament that things have gone this way -- there's nothing more I'd love than to do some deeper research on the type of compression algorithms Apple is using in their memory compression scheme (WKdm, re-implement it as part of the Linux kernel, look at algorithms to quickly identify candidates for compression, and all that good stuff. I get giddy just thinking about it -- but the last thing I need on my plate right now is another project.
If someone decides to take this up, they have my moral support. Maybe in a few years I can start working on interesting stuff like this again, but right now it would probably burn me out to take on something of this size.
Yaz
Linux had the likes of zram, zcache, and zswap for years before Mavericks.
zram was only merged into the Linux kernel in 3.14, on March 30, 2014 -- well after Mavericks was released. And it's more about using a portion of compressed memory for swap -- it's a compressed RAM disk for swapping to, and isn't the same as Apple's transparent page compression system.
zswap is much more akin to what Apple's Memory Compression scheme achieves, and it was merged into the Linux kernel mainline in kernel version 3.11, which was released on September 2, 2013, just a few weeks before Mavericks was released.
So you have my apologies -- I wasn't aware of zswap until now. If the topic comes up again, I'll ensure I only compare that feature to Windows (which AFAIK still has nothing like this available).
Yaz
One of the updates that folks seem to have overlooked is Metal, Apple's upcoming replacement for OpenGL.
While I think Apple is likely to continue supporting OpenGL for the foreseeable future, it's somewhat worrying that they've decided to just build a brand-new graphics library. It represents a refocusing of their optimization efforts, certainly, so in the future I would expect devs to have to use Metal in order to obtain decent graphics performance. This in turn will make development even harder, especially for cross-platform shops which expect OpenGL to work reasonably well in all environments...