 | |
 Thread Author
# 1

04-20-2009, 05:14 PM
| | | CrackBerry Abuser Device(s): Storm 2 9550 / PlayBook 64 Carrier: VZW | | Location: North Syracuse, NY Join Date: Nov 2008 Posts: 397 Likes Received: 18
Thanked 26 Times in 19 Posts
| | SFI vs COD's - Attempt to explain
I posted this in one of the other threads, but thought it might benefit newbs who are trying to understand what's going on in these hybrids and leaks.
This is my understanding of how the OS works. Thanks also to Thyth for clarifications which were used to edit this post.
The sfi file (some call it the radio file but it's much more) contains essentially the core of the OS. It's the Blackberry kernel and the Java virtual machine (VM) that actually runs the programs. Think of it as similar to the Windows kernel. There's a version for each type of hardware, just like theres a Windows x86, 64 bit, embedded, etc. It interfaces directly with the hardware, runs the applications, and provides the means for applications to interact with the hardware of the device.
COD files are multi-purpose containers that can hold programs, support data for programs, images, sounds, ringtones, etc.. The programs are run by the kernel / java VM contained in the sfi file. The applications interact with the user, hardware, network, and other applications by "talking" to the kernel. These are not just full applications like media player, the browser, etc., but little support apps like the keyboard GUI, launcher (Home), etc.
The apps (from the CODs) will generally run on most kernels / VM's (from the sfi's), whether 9500 or 9530, as long as the app doesn't access a function that doesn't exist or is changed in the core (sfi). I believe the apps can only access hardware / be accessed by the hardware through the kernel.
So upgrading the apps (CODs) without changing the kernel (sfi) will benefit those apps, but the core is the same. It may run better or worse because the apps are using the resources differently. It can have benefits when the apps improve, but can also cause problems if the apps call for new functionality that the old kernel doesn't have.
The sfi can directly affect hardware performance (graphics, touch, click, radios, power use, etc) because it directly controls it. It can also benefit or detract from any apps running on top of it.
The "Platform" version number refers to the sfi file - it is the platform that the rest of the OS operates on top of. The "Device Software" version refers to the supporting applications in the COD files.
Last edited by TBacker; 04-20-2009 at 09:46 PM.
Reason: Updates & clarifications
| 
04-20-2009, 05:16 PM
| | | CrackBerry Genius of Geniuses Device(s): ~ Retarded In Mind ~ Storm - It's CLICKTASTIC!!! © / ViPhone 4 - Cuz I'm VIP. Carrier: I hate RIM/Carrier VPL Service Books!!! | Truncated Emails... really RIM... really? | KB13677 is BS! Pin: I'm the Page Ranking person for Crackberry. :p | Don't be a CEO, Search the Forums! | Hybrids Suck! | | Location: On Safari in the CB jungle. ;) Join Date: Jun 2007 Posts: 14,367 Likes Received: 7
Thanked 210 Times in 130 Posts
| |
I agree....
| 
04-20-2009, 05:18 PM
| | | Forums Moderator Device(s): 3 Phones and 4 tablets in house :x Carrier: VZW | | Location: Noblesville, IN Join Date: Dec 2008 Posts: 14,154 Likes Received: 962
Thanked 845 Times in 578 Posts
| |
Sticky this please
__________________
~Matt
Storm 9550 w/ .517 & Rooted Galaxy Nexus @howarmat | 
04-20-2009, 07:48 PM
| | | CrackBerry Addict Device(s): Tour 9630 Carrier: Verizon Pin: PM me | | Location: Pasadena, CA Join Date: Sep 2008 Posts: 606 Likes Received: 0
Thanked 0 Times in 0 Posts
| |
which made me ALWAYS wonder why we care about reporting the OS with the APP version and not the Platform version as that seems the more important file and keeping track of that version...
|
 Thread Author
# 5

04-20-2009, 07:55 PM
| | | CrackBerry Abuser Device(s): Storm 2 9550 / PlayBook 64 Carrier: VZW | | Location: North Syracuse, NY Join Date: Nov 2008 Posts: 397 Likes Received: 18
Thanked 26 Times in 19 Posts
| | Quote:
Originally Posted by ddarvish which made me ALWAYS wonder why we care about reporting the OS with the APP version and not the Platform version as that seems the more important file and keeping track of that version... | The apps and platform both have big effects on the overall stability, so I would say they're almost equally important.
That said, RIM's version numbering is set up to be easy for their internal development systems. I imagine different platform / app versions are tried internally before they're happy enough with a combination to package it and release it for outside testing. Plus, it's likely that there are separate teams for the apps v.s. the platform, each on their own track. The platform is written in a different language (C++) than the apps (java).
I think the exe filenames contain a release number which refers to the platform/app combination. Not sure if it's vendor specific though. 4.7.0.75 for Verizon starts out with "9530AMEA_PBr4.1.7.0_rel107" before the platform and app versions.
Maybe Radio or CX can confirm / deny this? If confirmed, I'll add this info to my original post in the hopes of being more complete for stickydom!
Last edited by TBacker; 04-20-2009 at 08:08 PM.
| 
04-20-2009, 08:19 PM
| | CrackBerry User Device(s): Nexus One Carrier: T-Mobile | | Join Date: Mar 2009 Posts: 82 Likes Received: 0
Thanked 6 Times in 4 Posts
| |
That's not entirely accurate. The SFI contains the BlackBerry kernel and the Java virtual machine (which includes the ~800 native calls for hardware control and media playback). The constituent elements of the SFI are loaded onto the device in stages.
A COD is just a special Java module format to minimize resource duplication and storage size. A module is not necessarily an executable -- themes are modules that contain only resources. There are also library modules which have no entry point, but can be called upon by application modules.
The kernel and JVM are written in C, and compiled for the ARM architecture.
|
 Thread Author
# 7

04-20-2009, 08:26 PM
| | | CrackBerry Abuser Device(s): Storm 2 9550 / PlayBook 64 Carrier: VZW | | Location: North Syracuse, NY Join Date: Nov 2008 Posts: 397 Likes Received: 18
Thanked 26 Times in 19 Posts
| |
Well I was somewhat close I guess
Thanks for the clarifications Thyth. I'll ammend my original post a bit to your credit.
| 
04-20-2009, 08:26 PM
| | | CrackBerry Addict Device(s): Storm 9530 Carrier: Verizon Wireless Pin: 30529239 | | Join Date: Jan 2009 Posts: 524 Likes Received: 0
Thanked 0 Times in 0 Posts
| |
This is more of a reason why I'm staying on .12X and so forth. The building a hybrid is somewhat just wasting time.
But it may benefit some peoples storms, its just not worth it to me.
Posted from my CrackBerry at wapforums.crackberry.com
| 
04-20-2009, 08:29 PM
| | | CrackBerry User Device(s): 9530 (Storm) Carrier: Verizon | | Join Date: Jan 2009 Posts: 64 Likes Received: 0
Thanked 0 Times in 0 Posts
| |
So what are people actually doing to their phone when they install a hybrid? It doesn't modify the .sfi file, right?
|
 Thread Author
# 10

04-20-2009, 08:38 PM
| | | CrackBerry Abuser Device(s): Storm 2 9550 / PlayBook 64 Carrier: VZW | | Location: North Syracuse, NY Join Date: Nov 2008 Posts: 397 Likes Received: 18
Thanked 26 Times in 19 Posts
| | Quote:
Originally Posted by Cosmo_Rulz So what are people actually doing to their phone when they install a hybrid? It doesn't modify the .sfi file, right? | They're running newer apps (COD's) on an older kernel (SFI's).
It can have benefits when the apps improve, but can also cause problems if the apps call for new functionality that the old kernel doesn't have (or is incomplete).
Last edited by TBacker; 04-20-2009 at 09:00 PM.
| 
04-20-2009, 09:00 PM
| | | CrackBerry User Device(s): 9530 (Storm) Carrier: Verizon | | Join Date: Jan 2009 Posts: 64 Likes Received: 0
Thanked 0 Times in 0 Posts
| |
Thanks for all the info....very informative.
|
 Thread Author
# 12

04-20-2009, 09:12 PM
| | | CrackBerry Abuser Device(s): Storm 2 9550 / PlayBook 64 Carrier: VZW | | Location: North Syracuse, NY Join Date: Nov 2008 Posts: 397 Likes Received: 18
Thanked 26 Times in 19 Posts
| |
I should add that the guys who are building hybrids are looking for the strongest support app COD's across several releases, testing them against a kernel, and if it works okay, releasing it as a complete hybrid.
They're not a fully integrated OS as RIM would release it, and can be a bit unstable, but they're not a waste of time. It takes a lot of time and testing to mix all of those pieces, and they're doing the legwork for you. If you want the chance to see how your Storm can really shine, try one! If you want safety, stick with an official release. If you want advancement without quite as much risk, try a complete java folder hybrid (all COD's same version with the last good sfi).
Last edited by TBacker; 04-20-2009 at 09:33 PM.
| 
04-20-2009, 09:16 PM
| | | CrackBerry Genius Device(s): 9810 (Torch2) Carrier: Telus | | Location: Ottawa, Canada Join Date: Feb 2009 Posts: 2,207 Likes Received: 195
Thanked 607 Times in 171 Posts
| |
very nicely put,
two thumbs up from me
__________________ BBHTool Creator/Developer
Follow me on Twitter @theiexplorers
For the latest BlackBerry OS Downloads and OTAs, check out: theiexplorers.com Current Device: Telus Torch2 9810 running 7.1.0.402 bridged to a 32GB PlayBook | 
10-09-2009, 04:43 AM
| | | CrackBerry User Device(s): 8700g Carrier: Utel | | Location: Kyiv, Ukraine Join Date: Oct 2009 Posts: 19 Likes Received: 1
Thanked 3 Times in 1 Post
| |
Is Blackberry OS kernel a microkernel or a monolithic kernel?
| 
02-26-2010, 09:45 AM
| | CrackBerry User Device(s): 9530 (Storm) Carrier: NTT DoCoMo | | Join Date: Dec 2009 Posts: 10 Likes Received: 0
Thanked 0 Times in 0 Posts
| |
Dear TBacker, Quote:
Originally Posted by TBacker The sfi file (some call it the radio file but it's much more) contains essentially the core of the OS.
COD files are multi-purpose containers that can hold programs, support data for programs, images, sounds, ringtones, etc.. | Do you happen to know what "S F I" and "C O D" stand for?
P.S.
I have learned that COD is somewhat explained in en.wikipedia.org/wiki/COD_(file_format).
Last edited by yhamaie; 02-26-2010 at 10:01 AM.
|  | | | Thread Tools | Search this Thread | | | | | Display Modes | Linear Mode | | | |