Apart from the incidental choice of word “Cooking” to describe Windows Mobile ROM development process, I found out that recently there is really a great similarity between software programming and cooking.
With cooking, you master the science of key culinary skills, and then with some creativity, you venture into dishing out different cuisine. I am not a food connoisseur, so you don’t expect me to go into details on this, but you should get the point.
Now, turning over to software programming (oh my, I suddenly feel so at ease), there is alot of similarities. You need to master the fundamental programming techniques, and you exposed into different type of programming; UI programming, Web programming, Data integration programming, Kernel programming .
And yes, recently I had ventured into kernel programming, something I have never imagined in the past. The reality though is that I was just meddling around with the Linux kernel source, thanks to Opensource.
So I looked at the various kernel source codes published by various xda-developers, each of which addresses different aspect of kernel improvements. I decided to make a kernel that takes the best of all. The end product is one kernel that incorporates sztupy‘s Universal Lagfix, supercurio‘s Voodoo display tweak (Gamma and Sharpness enhancement), raspdeep‘s overclock and undervolt, and hardcore/ykk_five 341MB memory hack.
Universal Lagfix addresses the poor performance inherent in Samsung’s original RFS-based storage. The fix is about reformatting specific data partitions into Linux ext4 format, and by doing that, you can expect 200-300% of improvement. The applications no longer run with intermittent freezes (caused by the lag in the file system access), and responses are therefore almost instantaneously.
So one would think, with a 200-300% improvement in performance, what is there to optimise further?
Now Samsung Galaxy S comes with 512MB of RAM, as you would expect from a top tier smart phones in the market. The problem with Galaxy S, is that the amount of RAM available for end user, is only 304MB. There are more than 200MB of RAM reserved for the system, such as video, android OS, etc. It didn’t help when Android has a bad habit of loading installed applications and widgets on start up, which means by the time your phone boots up successfully, you would be lucky to have 80MB RAM free for use. Now in Froyo, the memory management is far more robust than Eclair, but still, with a limited amount of free memory, you end up having frequent memory clean up performed by the OS, resulting in unnecessary instability in the system. Both ykk_five and hardcore researched and figured out the kernel configuration for reserved memory. With some trial and error (as eliminating memory reservation causes problem with certain applications such as video recording or 3G video call), the folks in xda-developers established the optimal memory configuration. The result is 341MB of available memory (as compared to 304MB). That ensures some stability much needed in the Samsung Galaxy S.
And you would think by now; Samsung must have done something wrong if any more tweaks can be uncovered. You bet! The question now is how much have we optimised the Cortex A8 processor, i.e. the brain of Galaxy S. When looking at the kernel source code, folks have figured out that there are compiler flags we could use to compile the kernel to take advantage of the A8 Cortex CPU architecture. Not only that, the team has figured that the CPU can be over-clocked, just like how the PC geeks would have done to their desktop processors. Additionally, the CPU is currently running at a voltage level that can be further tweaked, i.e. reducing the voltage consumption value for each CPU frequency step. The end result, is a turbo-charged but super “air-cooled” (and efficient) Galaxy-S. Unfortunately, there is no real tool out there to measure CPU voltage consumption scientifically, so one can only rely on feel (e.g. lower temperature) and experience (battery consumption level). That said, the under-volt tweak is still being refined as we speak, just to determine the optimal level of voltage that is low enough but not at the expense of CPU running reliably at the desired frequency.
The final installment of the tweak is display. supercurio had definitely done far more research than anybody in xda-developers, and probably even in Samsung development team, to improve on the display gamma and sharpness. More explanation can be found in his web-site, so I wouldn’t regurgitate what has already been documented.
And of course, there are some minor tweaks I did along the way, as I touched the source code for the above tweaks. However, these are experimental at this point, it’s probably not smart for me to disclose until I can conclusively determine the value of such tweaks.
Did I mention the code name of the kernel I have customised? Yet Another Optimised Kernel (YA OK!) … So go flash this kernel if you happen to own a Galaxy S (sorry only for Europe and Asia Galaxy S owners) and want to turbo charge your phone. You will be surprise how buttery smooth your phone is, and it is definitely much faster than the Voodoo’ed Galaxy S I had awhile back.
Here’s a quick video capture of my Galaxy S running on YA OK Kernel. Enjoy.



Attractive section of content. I just stumbled upon your blog and in accession capital to assert that
I acquire in fact enjoyed account your blog posts. Anyway I’ll be subscribing to your
augment and even I achievement you access consistently rapidly.
Cartoons are fading into something solely made for toddlers, which is sad.
When their home planet is overthrown by a paranoid general and his mutants, they are sent off to Earth to hide out, plan a rebellion and take their
homeworld back. That’s another thing I like about working
on Flapjack.
Princess Jasmine from Aladdin also has a blue attire.
The ones I had the most fun playing was Bubble Hit and
Princess Bride: The Fire Swamp. They are iconic members of the Disney cast and no collection is complete without them.
whoah this blog is wonderful i love reading your articles.
Stay up the good work! You understand, lots of individuals
are hunting round for this information, you can help them greatly.
I do believe all of the concepts you’ve offered to your post.
They are really convincing and can definitely work.
Nonetheless, the posts are too quick for starters. May just you please prolong them
a bit from next time? Thank you for the post.
Sweet blog! I found it while browsing on Yahoo News. Do
you have any suggestions on how to get listed in Yahoo News?
I’ve been trying for a while but I never seem to get there!
Many thanks
I’m really enjoying the design and layout of your blog.
It’s a very easy on the eyes which makes it much more pleasant for me to come here
and visit more often. Did you hire out a designer to create your theme?
Superb work!
Hello Dear, are you in fact visiting this
website daily, if so then you will without doubt get good experience.
You really make it appear so easy with your presentation however
I find this matter to be actually something which I believe I’d never
understand. It seems too complicated and extremely huge for me.
I am having a look forward in your next submit, I’ll try
to get the hang of it!
There’s certainly a lot to find out about this topic.
I like all the points you have made.
Do you have a spam issue on this blog; I also am a blogger, and I was wanting to know your situation;
many of us have developed some nice procedures and we are looking to trade techniques with other folks, why not shoot me an email if interested.
Thanks for sharing your thoughts about testosterone pills.
Regards
Hi there to every body, it’s my first visit of this blog; this blog
consists of amazing and actually fine information designed for
visitors.
First of all I would like to say awesome blog!
I had a quick question in which I’d like to ask if you do not mind.
I was curious to find out how you center yourself and clear your thoughts prior to writing.
I’ve had a difficult time clearing my thoughts in getting my ideas
out. I do take pleasure in writing but it just seems like
the first 10 to 15 minutes are lost just trying to figure out
how to begin. Any recommendations or hints?
Thanks!
I know this if off topic but I’m looking into starting my
own blog and was wondering what all is needed to get set up?
I’m assuming having a blog like yours would cost a pretty
penny? I’m not very internet savvy so I’m not 100% certain. Any recommendations or advice would be greatly appreciated.
Thanks
It’s going to be finish of mine day, except before finish
I am reading this enormous article to increase my experience.
Hello are using WordPress for your blog platform? I’m new to the blog world but I’m trying to get started and create my
own. Do you need any coding knowledge to make your own blog?
Any help would be really appreciated!
Asking questions are in fact fastidious thing if you are not understanding anything
entirely, except this article gives nice understanding yet.
Hey just wanted to give you a quick heads up and let you know
a few of the pictures aren’t loading properly. I’m not sure
why but I think its a linking issue. I’ve tried it in two different browsers and both show
the same outcome.
Can I simply just say what a relief to find an individual
who really understands what they are talking about over the
internet. You definitely know how to bring a
problem to light and make it important. A lot more people should look at this
and understand this side of the story. I was surprised
you aren’t more popular since you certainly have the
gift.