Related
Hi everyone,
A relatively noob question here.
I am running the Official ROM 2.76.405.5 on an unbranded Hero, and want to give Linux-Swap a try. But I don't want Apps2SD; I might move certain apps cache to the SD after rooting, but like the Apps themselve on the internal memory though. How can I go about it? What do I need to do?
1) Can I format my SD card so that it has a fat32 and a linux-swap partition but NO "ext" partition?
2) If I do make an EXT partition, what patch/fix should I do to make only swapping work, without Apps2SD? Modaco's Hero patch as well as his custom ROMs come with Apps2SD. Is there a way to get rid of it?
3) Will I need "busybox" to make swapping work? Or is "Swapper" alone going to be enough?
4) If I make my custom update.zip file from Modaco's Hero patch.zip, from which I delete A2SD, and then falsh that update.zip via the recovery mode, will it work?
5) And what swap size do you recommend? Some people use as large as 256MB... while the default in most cases is 32MB. Is the larger the better?
Please help a non-developer here. Many thanks in advance!
OK, I have done it and it seems right. I made all three partitions (fat32, ext3, and linux-swap) and then pushed busybox by Modaco's method via "adb shell". That means I have the ext3 partition but no Apps2SD, so my apps would stay on the internal memory. Am I right?
Now I have also installed Swapper and so far it has not given me any error. Via Advanced settings, I have told it to use Swap "partition" instead on swap file. My swap partition is 256MB
My questions now are:
1) If I kill swapper by taskkiller, will swapping end?
2) How much swappiness should I choose?
3) How do I know that it is working and what improvements should I expect to see? How can I test that my phone is functioning faster??
Please reply
Would anyone like to share their comments on this, please?!?
One more thing, Hero comes with a 288MB RAM, but the total available system memory (RAM) shown by Swapper app is 197MB. Why such discrepancy??
Your views will be much appreciated!
Very well asked questions. Some masters respond to them please so we don't disturb you about these questions within every thread of yours
to format your sdcard (i'm assuming you know how to use parted and have only 1 partition) resize your fat32 partition, for example, with my 7948 MB sdcard:
Code:
(parted) resize 1 0 7850 (where 7850 is the maximum size of your sd-card minus the amount you wish to allocate for swap, in this case, 98 MB)
wait for it to finish re-sizing, doing it this way prevents data loss, after it's done;
Code:
(parted) mkpartfs primary linux-swap 7850 7900
(parted) mkpartfs primary linux-swap 7900 7948
(parted) rm 2
(parted) resize 3 7850 7948
(parted) quit
you basically create two linux-swap partitions (the second partition can be anything, but I use linux-swap because it can be any size in MB) so that the third one gets asigned a p# of 3, then remove the second one, and then resize the third one to take up the whole space left after your fat 32 partition, that way you don't waste any space. You can always
Code:
(parted) print
to make sure your fat 32 partition has a p# of 1 and your linux-swap has a p# of 3
About why there's only 197MB left on your device? Radio and GPU take the other 96 MB and the system has no access to that memory. Don't worry, it's still enough for you to run hero, pity us dream users with only 96 MB working RAM.
===edit====(answer more questions)
If by "official rom 2.73.405.5" you mean the one you can download from MoDaCo, then I don't even think it has root. There are four 2.73.405.5 roms there, the RUU, which you should avoid like the plague, the Official one which is only the RUU but packaged in OTA format, the Official one with Radio update, and the Official rooted one. You wan't to use the rooted one. Also, you do need busybox (you're already done it). I think that in the official rooted there are no scripts running at boot, so you won't get A2SD forced upon you (always a good thing, soon as I buy my Hero I'm using that build too as a base for my build), no compcache, no swap-file usage, nothing, just a stock rom with root. Anyway, you already have busybox, and that's all swapper requires, so you're good. For extra credit, you could learn how to unpack boot.img and edit the init.rc to call on your own script from bin and have it do swap automagically instead of using swapper (plus you can do nifty things like using mmcblk0p2 instead of p3, among other things).
I don't know how swapper works exactly, but I think all it does is echo settings to the VM to set up swap, so killing the app should do nothing (it's just a front-end to what other roms do automatically) and swap should stay working after you kill it. You can try, just kill the app and then open up the terminal and type
Code:
$su
# busybox free
that will tell you how much memory you have and how much swap you have, you should still have swap even after killing swapper.
About swap size?... depends who you ask. If you ask me, you have a hero with 198 MB working ram and you shouldn't even have to bother with swap at all. If you still want to, maybe try to set up a 32 MB compcache setup (you have enough ram where compcache makes sense) with a swappiness of 0 (this keeps the memory pages for Rosie in swap and even after heavy usage, you can always go back to rosie w/o reloads).
Having a swap-file on your sdcard makes no sense if you don't have a class 6 sdcard as it will hurt performance, so, if you do, anywhere between 64 MB and 198 MB (to match the whole working memory space of the device) with a swappiness of 60 should suffice.
I wish I had a hero...
Thanks jubeh, thanks soo much. It was really helpful After reading your answer, I completely understand how to make only fat32 and linux-swap partitions and save space by not having an ext3.
I am afraid I don't quite understand the compcache thing; I think I have to do more reading/homework on this before I ask further questions
I did install the Official ROM which I downloaded from HTC website as an RUU >> flashed Amon_RA's recovery image via flashrec >> rooted by pushing "su" and "Superuser.apk" via ADB shell, and then also pushed Busybox (from Modaco's 2.2 ROM, I think it is version 1.5.1).
I am using a Sandisk 8GB class 6 card... it is fine so far (except the photo thumbnails not being generated in the ".thumbnails" forlder, but that's a different story). I have noticed that after the ROM upgrade, a folder called "rosie_scroll" get automatically created on the SD card... may be it's a kind of built-in swap?!?! Am not too sure.
Moreover, at the moment, I have set swappiness to 60. When most of the apps are open, the hero functions quite well but I see that about 190-194MB of the internal memeory is being uesd at times and heavy use and the area of occupied swap partition gradually increases. I think it is because only thise apps will swap which are kind of sleeping or dozing in the background. Am I right?
Just another question, if you unzup MCR 2.2, you see in the xbin folder, a file called "dexopt-wrapper", an addition to busybox. What does it do? Its function?
Will having lots off apps open in the background and swapping them continuosly have a deleterious effect on the battery life??
Thanks again
Best regards.
having many apps open means using ram a lot. if you add swapping, it means not only ram sucking battery, but also reading/wirtting sd, which is pretty much battery sucker itself.
so yes, if you want to lengthen your battery life, keep your apps loaded atst to a minimum.
if what you want is a comparison for battery life between swapping and not swapping.. you should check if you have your phone always on or off and some other factors (keeping ram alive in hibernation mode wastes more battery than static sd memory, ie).
Thanks sik_gerar I understand where you are coming from.
Hello! I've searched all over the internet about this but haven't found any usable information about this. I was thinking about storing music files etc on the ext partition on my SD-card. I've a 8GB sdcard with a 64MB swap, 1024MB FAT32 and rest of the space goes to an ext2 partition. The problem is, how do I acess the ext2 partition in the phone? I know it is placed in /system/sd. But it seems it is only the super-user who has access to this folder. Is it possible to symlink the folder to another place and make it accessible for the user?
Every info I find is about storing apps on the ext-partition, which works. But having 6GB space for apps feels very overkill. FAT32 seems to be quite limited to speed when copying files, and also it have size limit of files.
The easiest and most recommend way to solve your problems is to repartion your card to:
0M swap (no use for swap on hero)
512M ext2 (see below)
rest as FAT (over 7G for your music)
If you plan on having every single one of the apps on the market you can give the ext2 partition 1024MB, no need to give it any more. There are numerous problems that can arise from having larger ext2 partitions, just of the top of my mind if you do have more data on the ext2 partition larger than your FAT free space you can't do a nandroid backup, you'll end up storing too much stuff on the ext partition which is usually wiped on ROM update and replacement, and it is much harder to access these files, as opposed to the FAT partition which is can be mounted as a USB drive to your PC.
Finally note I said ext2, and not ext3/ext4 because Ext3/4 are journaling file systems which are NOT suited for flash devices. They also have much more CPU overhead then ext2. Finally not all ROMs/kernels support ext3/ext4 and for a good reason!
BTW, please post questions in the either the Q&A or general sections. This is the DEVELOPMENT fourm.
Good luck.
Thanks for your reply, and sorry for posting in the wrong forum, which is quite obvious when I see it now!
Moved to Q&A as not development
erasmux said:
The easiest and most recommend way to solve your problems is to repartion your card to:
0M swap (no use for swap on hero)
512M ext2 (see below)
rest as FAT (over 7G for your music)
If you plan on having every single one of the apps on the market you can give the ext2 partition 1024MB
Click to expand...
Click to collapse
+1, Yeppers, wow a 6gb ext... That is some serious overkill,why?
Sent from my phone.
I was thinking to use the ext partition as a storage of music etc instead of the fat32 partition. The ext-partition is faster to copy files on, especially if you get a 32gb card and maybe you want to transfer big files. If I remember it right FAT32 table doesn't allow file-sizes more the 4GB, and it is also slower to copy to or from.
Any linux operating system should be able to read the ext partition on your sd card, or a program such as gparted is another thing to look into. Remember you can boot to linux without installing the operating system (boot from CD). Ubuntu or Knoppix is a good one to check out if you're new to it all.
Hehe, I think you did misunderstand my main question. The question is how to read the ext-partition directly from the phone with a file-manager (i.e. Astro File Manager). Not from a computer, from the phone, in the phone.
Vantskruv said:
Hehe, I think you did misunderstand my main question. The question is how to read the ext-partition directly from the phone with a file-manager (i.e. Astro File Manager). Not from a computer, from the phone, in the phone.
Click to expand...
Click to collapse
O in that case you have no chance lol. AFAIK there isn't any program designed for this purpose.
Vantskruv said:
Hehe, I think you did misunderstand my main question. The question is how to read the ext-partition directly from the phone with a file-manager (i.e. Astro File Manager). Not from a computer, from the phone, in the phone.
Click to expand...
Click to collapse
Well it depends where your ROM mounts it. I think most ROMs mount it to /system/sd, so you can use any file explorer with root permissions to browse there (i.e. ES File Explorer).
Hi all,
I was wondering today if it would be possible to resize the internal memory (emmc) of this phone in order to create an ext3 partition (on the emmc, not the SdCard) in order to put some apps there with link2sd ?
I know it's easier to make that on the sdcard but... correct me if i'm wrong but, emmc speed must be better than sdcard (even class10), no?
I thought it would be great to put the "big ones" (mostly games) on an ext3 partition and get benefits from high speed memory like emmc.
And restoring an ext3 partition with apps on it is way more quicker than restore apps with TIBackup, all roms testers know what i'm talking about.
But as i said above, i may be wrong all the way, could someone bring me the light?
Thanks for reading !
Not possible as far as I know. Internal EMMC is already a partition, you can't partition it any further.
What's the point anyway? IMO, link2sd is mostly useful on devices with little internal storage available. The Atrix has plenty...
I would like to know if is possible to use preinstal partition as swap on stock rom with stock kernel.
what would be the drawbacks of doing such thing?
can be placed a file to act as swap?
On a rooted device, yes. No problem. You don't need a file, you could just format the entire partition as swap. I don't see any drawbacks but I also don't see many benefits to this... For me, the normal physical RAM available to the system is more than enough. I have not been able to fill up more than half of that, not even once.
BTW the total RAM available should be around 700-800 MB. If you have less than that, you probably need to apply the ramfix, which will improve the performance of your device more than any kind of swap.
chepe263 said:
I would like to know if is possible to use preinstal partition as swap on stock rom with stock kernel.
what would be the drawbacks of doing such thing?
can be placed a file to act as swap?
Click to expand...
Click to collapse
The advantage of using the internal storage as swap is that it would be faster than putting it on a microSD card. The preinstall partition is certainly large enough to use for swap.
The disadvantage to using internal storage is that flash memory does have a limited life. For normal file access the lifetime of flash memory will most likely exceed the useful life of the phone, but this may not be the case when flash memory is used for swap. Swap will put many more read - write cycles on the flash memory than normal file access.
I use swap; my experience is that I need swap space if I want to use the webtop for anything more than occasional web browsing. Before I enabled swap webtop was regularly warning me that I had low memory (and you can't close the warning message, which is really annoying). I put together a description of what I did in the 7th post on this thread:
http://forum.xda-developers.com/showthread.php?t=2200679
If you do go ahead and use preinstall as swap, let us know how it works.
I debloated my custom ROM, and currently have more than 1 GB unused space in /system.
I have found no easy way to repartition, and in TWRP the resize2fs doesn't do anything. Probably because I'm unable to unmount the partition?
I don't understand how.
SD card/ internal storage is 11.67GB, so there should be some GB of space that potentially could be added.
I've been looking around and searching, but found no good solution.
I'm very noob when it comes to these kind of things, so excuse me.
Yeah I know, 1gb here or there, no big deal. I still have a fast extSdCard for storage, and I could even install more of the regular apps as system apps, to use that extra space.
But since I'm a little obsessive when it comes to certain things, I cannot let this go. So.... Anyone, anything?
Btw merry Christmas, happy new year.
PS. /System has 1.06 GB free, /dev has 1.35GB unused space. What a waste!!
Use the function FSTRIM.
P's with some 1000 posts you still called yourself a noob?
iXaidyiu said:
Use the function FSTRIM.
P's with some 1000 posts you still called yourself a noob?
Click to expand...
Click to collapse
Well, obviously I'm not a pro.
I'll look more into this FSTRIM, thanks for the tip.
And I'll probably need a [guide for noobs] on how to use it.
I've tried a FSTRIM app, but did not achieve the wanted result, and the terminal commands are not easy to understand.