“There is a lot of misconception around support for multitasking in the iPhone and its giant cousin, the iPad. What follows is my analysis of the situation. I am not privy to any insider Apple information. Moreover, while my knowledge is certainly colored by my work on Android, I’m not drawing a comparison or using any Google-specific knowledge.” Interesting stuff about how Android does multitasking.
Well, I’ve been multitasking on the Nokia’s Communicators I owned since late 2001, so Nokia/Symbian must be geniuses!
If you think Symbian is showing its age I won’t argue with that, but what about Palm’s WebOS then? That’s probably the nicest implementation available at the moment but, oddly enough, the article doesn’t say a word about it and the author prefers to talk about Bundles.
Well, saving state isn’t going to do any good to applications like Pandora, Last.fm, Skype and all the others for which “always on” is pretty much a requirement — not to mention that iPhone’s notifications are even worse.
As I see it, if your application has memory requirements unfit for a mobile device that’s because:
1) The design is wrong and/or you don’t know how to code on that platform;
2) The SDK is not very good;
3) The OS is not optimized for constrained devices;
Since iPhone OS, Android, WebOS and even Symbian are good and have at least adequate SDKs, there’s not much figuring out left to do as to where put the blame, is there?
RT.
The difference stands in when you write your application to know how you do it. If you know exactly the hardware, as is on console you can show-off. As smart-phones attack right now the low end computers, they want to impress with rich graphics and lot of buzz. Just for that reason I think that those OSes do not preserve the full capabilities of the OS. It is like DOS in the past: it can show much more than a laggy Windows 95 when it split the PC resources over more applications.
Sorry, but I have one N78, one N810 and one iPhone and guess what? Multitask on Nokia devices suck. And suck very hard. What the point of multitask if any application I open will make the whole device unusable??
And situation with Symbiam is much worse, as you have no clear indication of what applications you left opened, so people with short memory like me have to keep checking what apps I left open all the time, not to mention people like my wife that always let many apps opened without even noticing it.
For me just last year appeared some decent implementation of multitask, and it’s with Palm Pre, which has a very elegant solution to it. It’s a pity no one seems to like the device.. The N900 seems cool too, but I’m not sure since they won’t sell it on Brasil…
I recall multitasking on my N700 being a bit rough, but my N900’s been a dream, and it’s largely got the same hardware at the current generation iPhone. The core UI is still single window/full screen, but the compositing window manger works wonders for management and unless I’m explicitly trying to run CPU intensive applications together the performance is just fine.
Well, I have one XM5800 and N900. The 5800 manages multitasking rather well, it can have open 5 apps (browser(skyfire or opera mobile), f-secure, ovi store, music player, notes ). But the 5800 has more ram 128mb and faster cpu (434 Mhz ) then the N78.
Well current Symbian/s60 5th has 3 indications that tells you if you have something on. 1 green ball on top of the icon, all open apps listed under the home button, and home screen has the green ball on top of the main icon.
But the N900 dose it much better.
Then delete the crappy app it would suck in single tasking too…
I have an N800 and can leave it on for DAYS with multiple apps running it only eats battery when used.. if you aren’t using an app actively it really isn’t using all that much resources.
Amazing that people are actually talking about whether multitasking is practical for devices like the iPad.
I was smoothly and comfortably multitasking on my Psion 5 palmtop back in 1998, with its 18Mhz CPU and 8Mb RAM shared between storage and application memory. Even back then it could be useful to keep some applications and utilities running in the background, and even when the use of resources was noticeable it didn’t render it unresponsive.
Whether Apple actually need to add multitasking to satisfy their users is obviously another issue. I’m sure the iPad will fly off the shelves regardless.
Didn’t you notice that the original author has no experience with WebOS? He relias on his experience with Android and some knowledge of iPhone OS.
iPhone OS and Android are adapted to mobile platforms, maybe Linux is better adapted, but still adapted. Symbian has it’s own problems and WebOS is something totally new. So not, there is a wide array of possible failure points.
…what happens if the user loads their Android device up with these “services” to the point where nothing else will run? Unlikely maybe, but possible surely.
I also think lots of people are missing the point about why there is no multitasking in iPhone OS, and why, when it is introduced, I believe it will be in some way “optional”.
The iPhone and iPad are consumer devices with a very wide target audience. For the majority of that audience multitasking is the ability to be logged in to MSN, have some music playing and be surfing the ‘net or checking email, and guess what, iPhone and iPad can do that. The fact is multitasking confuses a lot of people. They get lost when there is more than one application open at a time, even on their home PC / Mac.
I’ve previously referred to the iPhone UI’s similarity to the old AtEase, the original version of which supported only one application open at a time. Even later when it supported multiple applications access was via the MacOS Applications Menu which most users never touched, and it still maintained the model of only one foreground app active at a time. I suspect when we do see multitasking on iPhone OS it will have something similar so that the non-techy users don’t get lost in their devices, and this will probably piss off the techy types anyway.
There may very well be a technical reason for it, although I suppose without reverse engineering the whole OS it’s impossible to categorically make that claim, but there will always be three points of view about why Apple do things.
The first group are those who believe Apple’s total focus is on ripping as much money from the consumer as possible without really providing anything of value, that they leave features like this out so that they can sell you upgrades (although I’m not sure how these people reconcile this belief with the free iPhone OS upgrades), and that Apple and everyone associated with them is pure evil.
The second group think that Apple can do no wrong, are entirely focussed on the betterment of humanity with their products and that everything they produce is best of class, that Jobs doesn’t just walk on water but in fact developed the molecular structure for it, and that if something doesn’t have an Apple logo it’s not just sub-standard but simply not worth having.
Then there are those of us who understand that Apple is just a company. Its not a religion and its not the devil incarnate either. Like any company with share holders and thousands of staff they will do what they need to do to make the biggest profit possible while delivering products that the consumer perceives have value, that they’ve made a significant contribution to the IT landscape over the years but have also had some unmitigated disasters and made some colossal mistakes, they use marketing as their ally, just like any good company does, and they deliver just enough to keep their customers excited but not enough to leave them complacent about the next upgrade – just like any good company does.
So comments like…
..are really just not necessary, and actually spoil an otherwise good article, especially when upon visiting the link in the article you’re presented with…
“Sorry, the Nexus One Phone is not available in your country or region.”
The majority of users couldn’t give a rat’s hindquarter about multitasking, and if you’re the type of user who does then obviously the iPhone and iPad aren’t for you, and you’ll already know that. And that’s great. It’s the reason competition exists…
No, they can’t. You can’t have Pandora or Last.fm, Skype/Fring/Meebo/whatever and a Twitter client running at the same time — unless you resort to jailbreaking.
Push notifications try to improve things somewhat but in my opinion the current implementation is rather poor and, again, it can’t help for applications that really need to be running all the time.
That said, the linked article was talking (or at least trying to) about the technical aspects of multitasking on constrained devices, not about the needs (perceived or otherwise) of the mythical “majority of audience”.
RT.
You make a good mate for Thom – quoting something that isn’t there. Read my original comment and tell me what the iPhone or iPad can’t do that I said it can. You CAN be LOGGED IN to MSN, be playing music and surfing the ‘net OR checking email. I didn’t mention ANY of those other apps, but hey, don’t let facts get in the way of your agenda…
No, you can’t at least not in the sense that most people mean. Play music and do another task, yes. Play music and do two other tasks at once, no. You see, you cannot remain logged into MSN as long as you wish, you are limited by the push time of your messenger program of choice. IN other words, you must set how long you will remain active on *their* servers, which in turn talk to the IM servers in question, once you close the app. You cannot keep your MSN app running in the background, remaining logged in from *your* device as long as *you* wish to, if you want to switch to checking your email or browsing the internet. Once you close the IM app, the timer begins counting.
…agenda?!? Damn, my plan has been thwarted again… whatever it was! 😉
Yes, you can use the iPod app while surfing the web and you could even play a plain MP3/AAC/AAC+ stream with Safari in background (thus losing the ability to check any other web site) and even use that travesty of push notifications to keep in touch with your MSN buddies, but that doesn’t change the facts: you can’t run multiple apps on the iPhone *yet*.
However, Apple will offer a sneak peak at iPhone OS 4 during an event scheduled for April 8th so, hopefully, this is going to change soon.
Oh, and about your other remark:
Culd be, but only if you ask the wrong question. I mean, people don’t even know what a web browser is (http://www.youtube.com/watch?v=o4MwTvtyrUQ) what do they know about multitasking? 😉
But try asking if they’d like to run this, that and that other app at the same time instead. What makes you think they’d say no?
RT.
I have iPod Touch(without volume buttons), so if I’m using some application and want to adjust volume… I have to exit the application and restart it. And that is extremely annoying! That is the cost of multitasking, not multiple running programs at the same time, but returning to the same state where you left off.
There is always a way to mess up your phone if you REALLY tried.
So apple is actually doing us a favor by not letting us listen to pandora while surfing? you know there is another way to solve this problem: invent an interface that doesnt confuse ppl when multitasking. isnt that what apple is supposed to be good at?
thats actually a good point. All my friends have iphones. to them, multitasking would be nice, but it is not a game changer. apple’s genius lies in marketing and brand management. while its competitors are busy implementing these technical features, apple has make its iphone into a cultural icon and fashion statement. Good business.
Don’t underestimate mainstream customer, because 1) he’s fatally less and less an eternal non-techy and 2) he’s expecting (for good reason) more and more from always more expensive devices.
For instance, even the most non-techy customer will expect to be notified when a new mail or a new IM contact show up *while* surfing on the web *while* listening to music. As soon he will discover that he must re-launch his IM or email client to see who’s/what’s new, as soon he will say you that, no, multitasking is not only the ability to *do* multiple tasks one after one but *also* at the same time.
In particular when the device is not specially cheap.
That’s not multitasking in itself that confuse people, that the clobbered interface used to control tasks. But there is some UI design that does it better than the quite old GIMP or the menu + foreground full-screen current task, as shown on Palm’s WebOS for instance.
If multitasking was confusing people, they could not even use their iPhone while walking, speaking and navigating (or far worse – and illegal: while driving) on streets, subways or roads. Figure what? They do.
People are multitasking every day. I guess they’re not confused by doing several things at a time, but more by the way they organized it well, or not. In case of a mobile device, by the way the *device* helps to organize it. Or not.
There is alternative smartphones to run android, available everywhere, while the iPhone OS runs only on… iPhone (now available in two sizes, though):
“Sorry, the iPhone OS is not available in your phone or device.”
😉
Android WILL kill off services. If there is not enough mem, Android will be killing processes(including services) until it’s basically iPhone-like(only one foreground application is running).
Description is found here: http://developer.android.com/intl/de/guide/topics/fundamentals.html…
If all non essential services and daemons are killed off and the only application running is the foreground application, Android will inform the user that the application is using up too much mem and give an option to kill that application.
Basically Android manages the applications in a way, that will impact the actual user as little as possible.
And though I agree on most of your points about multitasking, there are very particular use cases where it’s pretty much essential.(Other posts have covered it)
The article I gave a link at the top, is a must for reading and understanding. It’s hard to read, but word-for-word provides a LOT of information about Android. The original author probably didn’t have time to actually read it through.
PS: I develop for Android and I like looking around the Android’s sources.
PPS: I got my Nexus One, even though I live in LITHUANIA! If there’s a will, there’s a way.
Edited 2010-04-06 18:51 UTC
The fact is multitasking confuses a lot of people. They get lost when there is more than one application open at a time, even on their home PC / Mac.
So basically you’re saying a lot of people are too stupid, or computer illiterate, to handle multitasking.
I totally disagree, but I will give you this. Of my friends and people I meet, it’s the least technologically inclined of them that use MacBooks, (unless it’s what is used company wide), because it’s easy. Apple products are more like toys than computers, and that is appealing to a certain crowd.
I really fail to see the superbness of iPad. It may be thin, it may be a pretty decent tablet as a device, but it has terrible, iPhonish interface for dummies.
I would rather expect to get a nice, full-blown desktop and not some handicapped UI that looks just BAD and childish. Besides – I seem to use a thing called CLI with a FULL-BLOWN ROOT ACCESS. Noone is even restricting it to me, ’cause it’s MY device [whatever it happens to be in a particular moment]. And so we come to multitasking … well, I could not even imagine using my computer [PC, tabler, whatever] without a possibility to back up my work with – say – music, or something else. I use many program simultaneously, so this seems to be quite funny … these limits are illogical and – may I say it aloud – quite NAZI. Yes, you get it right – Steve Jobs seems to ve ‘Da Hitler of teh premium computing’ … I fail to see an advantage of letting yourself to be enslaved by some company – whatever it might be.
And you can do all that right now, on the Mac, on Windows or on Linux. You already have desktops, laptops, and netbooks.
This is a different class of device for people who do not want (or even know) root access. It allows you to do a lot of things that you would do on a computer, but in a interface that is simpler and driven by multitouch.
That is why it is special, because no one else has done it yet. It is special because it is DIFFERENT from your computer, and offers a different user experience. If you don’t like it, don’t buy it. I probably won’t buy it until I need it for something.
Fair enough, your argumentation seems to be partially valid. I may not belong to the target audience of this particular product and that sounds reasonable to me.
On the other hand – Apple claims that iPad is a tablet PC, but you won’t get a typical tablet PC experience using iPad, would you?
Thanks for insightful input.
My BlackBerry has a 312 MHz CPU and 64 MB RAM, and supports multitasking. It also has an uptime of one and a half years!
My old Windows Mobile devices had multitasking with similar CPU and RAM. I could play music, download something with the web browser, and play a game all at the same time, and I could keep the messaging applications open. The UI was certainly not very good at it.
On my iPhone, responding to a text message while listening to music and then returning to iPod takes entirely way too long.
Blackberry multitasking works really well, although blackberry apps are extremely simple in comparison to iphone apps, plus all java.
Blackberry and Windows Mobile can be technically better but they are neither “cool” nor “trendy”. “Cool” people with iPads will laugh when they will see a Blackberry in your hands. Do you really want “cool” people to laugh at you? Do you want to be unpopular?
Is Obama considered cool?
Multitasking on a “limited computing device” is really not too hard. Remember, the Macintosh Classic had 2 MiB of RAM and a 16 MHz processor, yet could run Multifinder. If you didn’t have enough RAM to run a program, it would tell you that you didn’t have enough RAM.
And if a currently-running program needed more memory… well, it didn’t, because each program was launched with a fixed memory size that was specified by the developer.
This is in Apple’s OWN HISTORY. Why is it so much harder to do in 2010 than it was in 1990?
Edited 2010-04-05 02:08 UTC
Yes, thank you. This is exactly what I was thinking when I read the article. Back when my family got its first real computer in ’95, we had a Packard Bell with 16 whopping MB of RAM and Windows 95. Multitasking wasn’t a problem. Sure, the machine was no screamer, but programs could run in 16 MB of RAM without hitting swap terribly. If people could do it back then in C and C++, there’s no reason why they can’t write software that easily runs in 256 MB now. Heck, I had a laptop a few years ago that had 384 MB of RAM and could run KDE 3.5 + Wine, etc. without touching swap. So I totally don’t buy the argument that programs can’t run in 256 MB of RAM without hitting swap*. They can. The APIs and the OS just need to be clean and slim and the programs should expect the same. Perhaps Apple should even implement a per-program memory limit to force programmers to make good use of RAM.
*Swap only needs to be used for private data. Shared libraries, read-only data and code can just be reloaded from the flash drive or whatever they use to store the programs on. If private data is using up that much memory, something is wrong.
Back then you did not have
* a 1024×768 full color screen
* multi-touch screen
* applications playing media in the background
* applications constantly polling the network for updates
back then, applications in the background, sat in the background doing nothing. On the iPad, the only reason to run an app in the background is if it is actually doing something constantly.
In addition, the biggest problem is, the iPad interface does not show any easy way to just close the window, vs. quitting the application. Multi-tasking will probably come, but only when they figure out a good way to work all of this out.
Sorry, aside from touch screens I had all that and more running on a 14MHz Amiga 1000 with 2.75 MB of RAM with the *ENTIRE* OS in RAMDISK too.
(PS, that included a very low res video (64*128-8 levels gray scale), not anim files – video).
Consider the PDP-8’s that J,K & R developed UNIX on — 64K of RAM, iirc.
That logical leap is at the core of Robert Love’s guess about the multitasking issue. But in fact flash can be used as a swap backend on mainstream operating systems, so it can’t be that bad or that complicated. Try again.
No, I think he was suggesting that the lack of a hard drive meant that there was limited memory of all kinds that the iphone os could use.
It could use some of its flash for swap. The lowest end Iphone has what, 8 gigs of flash? It might be difficult to do swap on that advertised space without people getting upset. If people are treating them like ipods and loading their entire music library, there might not be much of that space left for swap.
I’d have to respectfully disagree with Robert Love here.. The fact is, mobile phones DO have a HDD and there is no reason they can’t swap (the CPU’s I’d imagine can handle it).
Android also does have a means of running daemons I thought..
The reason why the iPhone’s don’t have full blown daemon support is probably the same reason Apple controls the apps that can be installed on them.. Control!
If Apple allowed persistant applications, users would override all of Apple’s Apps, and make it difficult for Apple to get contracts from mobile phone service providers (because users would override every app on the phone, everything would be running moip).
And NOT what they speculate on, can check, but refuse to!
Here’s my easily-found source:
http://developer.apple.com/iphone/library/documentation/Cocoa/Refer…
Or, in other words: the iPhoneOS has had support for serialization of an application since at least 2.0, which is the first version documented and available officially for third party developers.
The real reason Apple does not yet support third party application multitasking with background third party apps? Likely a management issue for the GUI, or something along those lines, but quite possibly a Steve Jobs control issue. For all I know (and I don’t know with certainty) before now, Apple has not yet figured out something that satisfied Steve Jobs’ sense of beauty and function that was user-friendly: perhaps he really doesn’t want people associating the iPhoneOS devices with administrative complexity, like a lot of other devices. That’s not to say that Mac OSX is the simplest OS to administer in all cases: it’s still a full-flown Unix underneath it all, and bending over backwards for some old Mac-isms actually makes some things a bit more complex to accomplish, but it fairly nicely accomplishes the 80/20 or 90/10 or even 99/1 rule: where the majority of the things you might want/need to do, are done easily by someone that’s not a certifiable computer techno-geek that spends way too much time learning such things to fit in with the typical population.
I think you are confusing marshaling as “lets save this data/object to disk/memory” with the automatic state handling of Android.
Technically… yes, you could modify your iphone app to serialize all data to disk before its get killed, then read it back and continue next time it is run. This is not multi-tasking and it is t0o cumbersome to do manually anyway [not to mention that the OS may kill you before serialization is finished].
Haha, the iPad can’t even handle single-tasking with its measly 256MB.
http://gizmodo.com/5509384/sorry-your-ipad-is-low-on-memory
This pretty much seals the deal: current-gen equipment will NOT get multitasking in iPhone OS 4.0.
Edited 2010-04-05 11:22 UTC
All that story does is seal the deal that gizmodo doesn’t do proper fact checking, and you rely on that and don’t do your own: that’s a bug in “We Rule” that is a known bug, and a known bug in your lack of fact checking.
In the standard UIController there is a method called “didReceiveMemoryWarning” which is received by a view controller when the system is running low on memory: this means either the application generally is very close to the total amount of resources being used up simply because it is large, or it means the application likely has a runaway memory leak. The OS itself does NOT display such a visible warning to the end user: that’s done by “We Rule” and is merely a debug warning the developers left in there, instead of them using the developer tools (and typical developer care) to manage memory correctly. When an application receives that message from the OS, it may free up whatever memory it can, or the application risks being killed: this is how low memory conditions were chosen to be handled, at least to version 3.x of iPhoneOS, where there’s also another method for doing finer memory management than 2.x has, too. By default, a view controller releases all resources that can be released: a user would never see this happen. The more applications running, the more this will pop up with buggy applications: oh yes, all the Apple-provided apps that run in the background also claim their varying amount of RAM which controls what’s available for third party apps, too, so, a third party application can rely on the system telling them how much total physical RAM they had, but they still cannot rely on any given amount being available at startup, because users can be doing many things via Apple apps in the background, so that doesn’t explain anything at all about why no third party multitasking is supported under iPhone OS.
Now, why aren’t things swapped out to Flash? Well, if you understand how Flash works, that has an obvious answer: it’s a slow thing to do, for one, and, on top of that, it’ll wear out Flash very quickly. Flash as a swap device is a lousy idea for those reasons.
And you wonder why people get the impression you’re a Windows shill? Go read your very uncritical stance about “new wonders from the Windows front” (e.g . WPhone7) and compare it with your reaction to iPad.
It’s really easy to bring any device down with software that has memory leaks or does excessive resource allocation, no matter how much memory is built in. All in all, that doesn’t affect the ability to have multitasking at all.
(Apart from that: If you would have bothered to read about the reasons for this behaviour – since this is not normal behaviour on iPhoneOS – you would have seen e.g the following explanation:
All this means is that [the App] We Rule will run slower. I get the same problem occasionally on my iPhone. It’s due to the fact that the app is actually run in the ngmoco servers and then transferred to your RAM. Very little is actually done on the iPhone processor. If you play a lot of We Rule and go kingdom to kingdom rapidly, your phone doesn’t have a chance to erase the stored info and the RAM fills up quickly. Hope that helps…..
and wouldn’t have bothered to post one of your famous ‘I hate Apple products’ comments).
Or, you read all my Apple reviews. None of them have been negative. In fact, they’ve all been incredibly positive.
Well, why does your answer not surprise me?
Maybe you don’t notice it, but while you often give MS the benefit of the doubt or simply parrot what some people from MS (marketing) say without any critical stance (since they talk often and most of the time in the manner of “we will have that feature, too, but better – just wait and don’t flock to our concurrence”*), you seem to have sever problems with the Apple way of not talking about future products or features and are fast with critical comments (just look at your “haha!” comment above) and other wild speculations about why Apple cannot deliver or is on the way to evil world domination ..
*) A little example? Just look what happened to the OOXML ISO standard:
http://arstechnica.com/microsoft/news/2010/04/iso-ooxml-convener-mi…
referring to
http://www.adjb.net/post/Microsoft-Fails-the-Standards-Test.aspx
Developer message. As in, the developer created that message. Nothing to see here. All it means is the developer of the app (a game) is pushing the boundaries of the available memory*. I agree Apple should give more, but that is nothing to do with this issue.
* There is no proof that the “available” memory is actually being exceeded due to the lack of capability. It could also point to a memory leak in the developers code or poor coding for a portable device. No idea, haven’t got that app, not likely to know otherwise.
….can’t Apple just have a few daemons running in the background for apps such as Voip, that notify you when a call or message is coming in. Freeze the current app, go to the Voip app, then when you are finished, re-freeze the voip app and go back to the previous one.
The Home button is perfect to use as a floating menu button instead. It freezes the current app, shows a menu with currently frozen apps plus access to going home (which quits the current app). I’m sure Apple could make that elegant. To get around the lack of memory issue, the installed app is also allocated extra hd space during installation that is required for freezing, thus leaving normal memory untouched. Sure this means less hd space for the total number of apps, but let’s be honest, 95% of what’s installed is rarely used! Might be a good incentive to install less rubbish 😉
I think I actually read somewhere that the iPhone has swap. But personal experience supports that claim. I have a 16GB iPhone. It was fast when I first got it. Then I loaded 14GB of videos onto it, and it got to be really slow. When I removed the videos, it got fast again. My guess is that the wear-leveling algorithm only works for unused space, and since flash likes to work with large blocks, writes will generally be faster when there’s more free space to “fragment”. When free space is limited, more defragmentation has to happen, making writes (such as swap) slower. This is just an intuition, but in general, swap is a last-resort and something that you hope only to use when the current working set is smaller than DRAM but all working sets are slightly larger. My iPhone, I think, has only 128MB of DRAM, so compared to the newer devices with double the DRAM, it’s no surprise that it’s slower in part because it swaps more.
Apple says they do not support multitasking because it is a hamper to stability and a drain on battery life. That clearly isn’t true—the iPad has plenty of processing power and battery capacity.
Just because the iPad has x amount of battery or cpu power does not negate their statement about multitasking and battery life. For a device like the iPhone it can be justified to force single-task use as a way of encouraging long battery life.
Multitasking does consume more in resources on a system level and users make it worse by leaving crap running in the background that they should have closed.
As for the iPad did the author not consider the possibility that they want to keep the OS in their portable devices consistent for economic reasons? The percentage of purchasers that actually care about multitasking is small, so why use a different system?
Try jailbreaking iPhone or iPod and you will see that they do actually have quite a few processes running in the background – a.k.a multitasking. Those facts just kill Apple’s excuses and Apple apologists’ excuses based on logic like yours.
Update: My 1st gen iPod Touch with iPhone OS 3.1.2 has 26 processes running at the moment of writing of this post. I have no music player running.
Edited 2010-04-06 19:17 UTC
Why the heck does not having a hard drive prevent them from swapping?
Why can’t they swap to flash memory?
Flash memory has a finite life that is actually inferior to hard drive real world like expectancy. Couple with the issue that replacing a soldered chip is infinitely more complex than replacing a hard drive, you do the maths.
Swapping to Flash is also more complex due to the write level caching that many flash based devices do. If you are writing to flash memory in a “kind to flash” type of way, you have a hard time maintaining a contiguous file block large enough to make swapping out RAM useful.