hi,
it is commonly known that wm5 compaction problems in hx4700
are due to very slow ROM type which use NOR gates instead NAND.
does anyone here tried to find another ROM chip which could
suit hx4700 and be NAND type?
could it be possible or due to hardware architecture or any software
reason it is hopeless?
ok, i've found this: link
[cut]
Okay, so let's talk about NAND and NOR. These are the two main types of ROM. They're largely used the same way, and everything I've said about ROM is true of both of them. So, for the most part, you don't need to care which kind you've got. But I'll tell you about them anyway.
NOR: Faster to read, slower to write.
NAND: Slower to read, faster to write.
This is all relative. Both are considerably slower than RAM. There's one very important difference in these technologies. NOR lets you do something we call "execute in place" (XIP). Remember what I said before. To run a program, you first load it into RAM, and then you run it from there. NOR lets you run the program directly from the ROM without loading it into RAM first. This means that you can have a system with less RAM. Note that this only works for programs. You can't XIP a picture or an audio file. NAND typically compensates for not being able to XIP with price. (NAND tends to be cheaper.)
Because NAND is faster to write, and NOR is faster to read. The ideal system would have 64M of NOR and 64M of NAND. It would store all the programs in NOR and store all the user data in NAND. Since it would XIP all of the programs, it wouldn't need 64M of RAM and would drop back down to 32M, thus saving power. XIPing also means faster application load times, since you don't have to load the program into RAM before running it. A device like that would rock.
[cut]
and as i remember XIP has sth to do with cooking. does it means that change of ROM from NOR to NAND would require to patch XIP or do
some engineering on bootloader/kernel/whatever?
regards
piotr
dzebrys said:
(...) does anyone here tried to find another ROM chip which could
suit hx4700 and be NAND type? (...)
Click to expand...
Click to collapse
Peter, do you have a bug in my house? Today I told my wife if someone to think up a chip you talk about then it will be bought by thousands of hx4700's users
[Update]
The explanation is in the answer of Mike Calligaro (Microsoft's guy):
"As for having a single image for both the x50v and the x51v. If one has NAND and the other NOR, that won't work. The filesystem drivers need to be different for NAND and NOR devices, so an image for one won't work on the other."
So we can forget it. Unless someone will write a proper drivers which would be miracle equal
regards
piotr
Click to expand...
Click to collapse
Regards,
Piotr
Ps. Are you another Peter or it is me, Mr. Hide? - Hehehe.
what about disconchip
Umpal said:
The explanation is in the answer of Mike Calligaro (Microsoft's guy):
"As for having a single image for both the x50v and the x51v. If one has NAND and the other NOR, that won't work. The filesystem drivers need to be different for NAND and NOR devices, so an image for one won't work on the other."
So we can forget it. Unless someone will write a proper drivers which would be miracle equal
Click to expand...
Click to collapse
further in comments there is also sth like:
"Most of WM5 smartphones now use diskonchip as ROM. However, diskonchip is actually a NAND-based flash memory with NOR-like interface."
now i have my board at RAM upgrade. the donor is mb from qtec 9090.
as i remember there is diskonchip ROM. at hx4700 there is 198MB of ROM
and it is formed by 2 intel's chips. maybe it's worth of digging...
/piotr
The real killer for NOR flash devices is the erase time - the relative read and write times are not really significant.
According the Mike Calligaro blogs neither the hx4700 or the X50V was doing XIP in WM5 as this requires Intel Storage Manager which he claimed was not present.
His analysis was the block size was larger than the MS recommendation. The erase time is crucial as flash has no rewrite function so if a block is changed it is written to a new block and the old block marked for erasure. The erase operation prevents access to the memory for the time of the erase.
The smaller block size means that the filesys thread needs to run (especially "emergency" runs when spare blocks get critically short).
In his analysis he never said that there was any good reason why WM5 devices should not use NOR flash.
And everyone tends to assume that filesys does not exist on NAND flash devices - it does but the erase operations are faster.
Yes, I've decided to take on a mammoth task, welcome to "ROSS"... "Replacment Operating System Structure" for Mobile phones & PDA's =]
The website is located here!
Yeah, you all think i'm crazy "hang on, you can't port Android to X50v!"
Well, not YET, but with help It will be done.
What is android you may ask?
Android is google's open source platform for Mobile phones and PDA's =]
So yes, I plan to create a operating system for X50v to replace WM6 with and allow users to develop/change bits of the operating system they don't like.
There will be a few "flavours"
Lite: Basics, very Basics, just Wifi/bluetooth support, a simple GUI and No applications (just a few settings). This free's up a LOT of RAM + ROM
Medium: The one "hopefully" most people will use, This is the standard one, basic office applications (replacing all the standard WM6 ones) a few games, decent GUI etc.
Heavy: The one that leaves least RAM and ROM available, the one with the most applications + usability, although it may lag a little.
Of course, we're going to build a "super-lite" version first, just to make sure it's flashable to the X50v =]
Maglite_RUS & Football may be willing to help, maybe not, we hope for his help + support throught this project
but first we need a team!!!
If you have any experience in making ROMS for X50v (ONLY, we will work on others after the X50v is done) or developing operating systems (various Linux distro's included) and Java (what the majority is coded in) then please please sign up. I plan to help develop the applications rather than the operating system myself, but I will work on ALL aspects of the project of course
If you're interested, and have found this link of google or something, then don't hesitate to email me here
Feel free to discuss =]
Hi Obsidiandesire...
This could be a great project!
It's very nice to see you're a PPC enthusiast like me...
I'm a PC software developer (not PPC) with quite experience but to start this project we need some black belt coders...
Another Linux project was already started here
http://www.handhelds.org/moin/moin.cgi/DellAximX50 but the developing speed was not so fast...
Another issue would surely be the ROM compaction problem that will kick in also on a different OS.
The only thing that could solve this on x50v would be to hack the bootloader in a way to load OS from SD or CF , so all data will be written on a fast write NAND device... By the way this would mean loosing the internal ROM!
But your approach seems to be the most sensible one, as one would never lose the possibility to startup the phone's default os (windows mobile).
It seems quite an interesting project, i have to admit i have a strong will to help you out, as i am also a professional programmer, however i am not a java, or C developer (long time i do not do anything in C), so i guess i am more of a designer myself
Well, i will keep up with this post and maybe we will colaborate in the future, i feel it's time to have our own software in the mobile's, i hate the microsoft's approach to the os handling.
Glad to see we're getting some interest in this project!!!
Hopefully, soon we could set up a website and start developing =]
who knows, we may be the lucky winners of the google competition and get $10 million! (not much use to me because im british lol)
So, you're Idea would be basically multi-boot?
sounds good, but we'd need to modify the bootloader (maybe hold enter, power + reset to switch to ROSS-Mobile?)
Sounds good! and i've just started learning Java too, so this project could take a while, hopefully, if it starts getting quite a bit of attention, we could move it to other platforms (HTC touch etc) which would make us Gods within the PDA community
I do like the posibilities of Android as it looks like it could make good use of the graphics chip in the X50v and it wouldn't have Windows Mobile lagging it down
How much RAM does it have again? It would be as powerfull as an old PC if you overclock it slightly (700mhz, 32MB RAM, 16MB graphics or something like that) and slap on a minimal OS and you could have your own [email protected] Pocket version! lol
Sorry if i've gone off on a tangent, i'm really excited about Android and it's possibilities.
First steps though, how would you get the DEFAULT android software to boot on the X50v? I think this should be our goal before starting on the project itself
this is cool. if anyone gets this to work i would be happy to be a tester. i don't know much about programming but have flash other devices with Linux.
A bit a info i picked up on flashing Linux on ipaqs is that you had to flash a new bootloader that would boot both wince and Linux. don't know why both but maybe to return to wince because to flash the boot loader you did it with a app that ran on wince and after that you would boot the bootloader and make a serial connection so that you could send the linux distro and erase wince.
Thanks for the info, more help on how to do this would be great! (I could try this on my X50v for testing purposes)
would it not be actually possible to boot the android/linux directly from a storage card? so as to effectively allow users to 'dual' boot?
duke_stix said:
would it not be actually possible to boot the android/linux directly from a storage card? so as to effectively allow users to 'dual' boot?
Click to expand...
Click to collapse
Each time you would boot a os you would erase saved data (hard reset) because you would need the memory were the settings are for each os. but thats is what i think i haven't flash a device for a long time so im out of date on this as far as if they gotten a doul boot win ce and linux but i assume that this will be a problem with win ce and android dual boot.
You would have to put both os in the flash mamory(were the os goes) and find a way to save the settings from a os and store them so that it can load the settings for the other os and vice versa
but you could do it like linux on a palm zire72. i have linux on my zire but linux is on the memory card when i reset the device it will reboot onto the palm os, so no flashing happens just load the bootloader through the palm os and linux kernel loads, but at the same time palm os is hard reseted, this is palm but same linux that is used on ppc. You would need to find a way too load a bootloader during win ce but dont see that this is possible. only one os at a time.
And Obsidiandesire i will try to get an old friend that used to work on porting linux to ppc he might help on the bootloader part but haven't herd from him for a long time but will try hard on finding him. but as long as we get many people this might be possible. i will post later if i find him.(good luck on your leg)
or, the flash memory card from which you 'boot' the android/linux from could actually hold a partition which served as a flash drive/storage drive aswell? so effectively it would mean you would require something like a 1gb or 512mb card, splitting that to allow you RAM and ROM space but i cant see why that would be too difficult. it would just be a matter of tricking the linux to thinking the local on-drive storage is its 'root' drive and the default drive to save to and to completely and totally NOT access any of the WM stuff on the flash memory that is hard-soldered onto the handset.
not sure if this helps, just bandying ideas around at the mo!
duke_stix said:
or, the flash memory card from which you 'boot' the android/linux from could actually hold a partition which served as a flash drive/storage drive aswell? so effectively it would mean you would require something like a 1gb or 512mb card, splitting that to allow you RAM and ROM space but i cant see why that would be too difficult. it would just be a matter of tricking the linux to thinking the local on-drive storage is its 'root' drive and the default drive to save to and to completely and totally NOT access any of the WM stuff on the flash memory that is hard-soldered onto the handset.
not sure if this helps, just bandying ideas around at the mo!
Click to expand...
Click to collapse
I see what you mean, but then the card might not be recognised in windows =/
However, denying the operating system access to writing the rom (and store everything in RAM) might work, but all settings would have to be stored on the SD card which could lead to a slow application.
The SDK (with the sample apps) itself is around 100MB, but Methinks that the final OS will be around 30MB (Without any apps)
Expanding on the partition Idea, what about partitioning the ROM itself? This might require a special WM6/5/CE ROM but one flash compared to many (everytime the device boots) could be worth it, and it could get round the setttings loss if we restrict each one to not write over the other?
My leg is getting better thankyou, seems like a severe muscle strain (The doctor said) so i should be back in school tomorrow.... great
i see what you mean by the card not being recognised by windows and offer a simple solution:
have a DEDICATED card for android and a seperate card for storage under WM.
to be completely honest with you, theres people on here spending hundreds and hundreds of pounds to have the latest device (and im one of them) im sure they wouldnt mind spending an extra few pounds for another memory card which would allow amazing functionality without actually jeapordising their current WM install (so they can have an install of WM6 to fall back onto)
what i propose is the following system:
1) MEMORY card formatted and partitioned to allow more or less the same sort of structure of memory/ram as the onboard memory does
2) INSTALL the actual android/linux to the memory card utilising the space as you would the hard-soldered memory on the phone without actually modifying the handset itself in any way whatsoever.
3) THIS method allows people to effectively dual-boot android/WM6/5 without the danger of them actually ruining their WM6 install, effectively using the android/linux platform to play about with whilst having the original WM6 to fall back onto for day-to-day usage.
shouldnt be too difficult to accomplish, im sure a modified bootloader would do the job pretty well, cant see why without the help of Olipro and Pof this cant be done!
LETS GET THE BALL ROLLING!
Seems good, but what, have the SD card for storage and CF for the OS? 'cos you obviously can't have 2 SD cards in the X50v (unless there's a CF-SD card adapter lying around somewhere on the web or on a shelf)
But as far as getting the ball rolling, yeah!!
Work on having the vanilla build of android (one included in the SDK) running before starting from scratch!
Obsidiandesire said:
Seems good, but what, have the SD card for storage and CF for the OS? 'cos you obviously can't have 2 SD cards in the X50v (unless there's a CF-SD card adapter lying around somewhere on the web or on a shelf)
But as far as getting the ball rolling, yeah!!
Work on having the vanilla build of android (one included in the SDK) running before starting from scratch!
Click to expand...
Click to collapse
another problem would be on getting the bootloader to see the cf card and that maybe a problem, we would need to add one of the slots(sd or cf) to the bootloader and let us choose what os to boot or what memory to boot(sd,cf, or rom mem).
the other way if we don't want to modify anything would be loading a bootloader during winidows mobile.
i hate this time difference
i cant see why you cant actually have the android on the SD card and stick to having the CF card as storage for both WM and Linux
that way, it would mean a sort of 'standardising' for people to port over to other phones which use SD based memory cards.rather than making it bespoke to CF capable devices (of which there arent many!)
Yes, the problems will be a rebuild of the bootloader to recognise both SD + CF cards.
And loading the bootloader under Windows mobile could be good, but you'd then have to terminate WM (which could be a problem)
And which part of the USA do you live in? There's probably an 8 or 9 hour time difference :-(
@dude_stix
well, even so, you'd need both SD + CF storage, which AGAIN could be a problem. But (in my experience) CF is more expensive, and considering Android will take up less space, It seems a more viable option (in my example, a 32MB CF card would be useless if I installed Android on a 2GB SD card and nullified the rest of the space for use (which could happen))
I think the easier option would be to modify the bootloader to look for images on both cards and install on the one with the image on it.
What about drivers etc? Obviously these would be needed for most things.
drivers????
thats all i got but it would not be hard if htc releases its android devices soon so we can get ideas from them. still today linux devices have problems with bluetooth, wifi, backlight, sd, etc...
posted on 5:23 pm here in south central US (Texas)
That's a 6 hour time differance :/
The Drivers being the things (mainly DLL's in WM) that controll the wifi/bluetooth etc.
This is why Linux has problems with them, i think they have to rebuild their own or something, which could pose a problem.
Do you think we should set a website & Forums up, or is it too early at the moment?
ultraprimeomega said:
drivers????
thats all i got but it would not be hard if htc releases its android devices soon so we can get ideas from them. still today linux devices have problems with bluetooth, wifi, backlight, sd, etc...
posted on 5:23 pm here in south central US (Texas)
Click to expand...
Click to collapse
Yeah... ...Drivers!!
This will be the hard one...
With WM6 cooked rom it was easy... We could reuse WM5 drivers written specifically for that device (x50v and x51v needed a specific driver for the 2700G chipset).... So if there won't be any Smartphone with such chipset with Android pre-installed it would be very hard to write that drivers from scratch... By the way somewhere I remeber I found a PowerVR driver source code for Linux that could be useful to do the job...
Cheers
Antineutrino said:
Yeah... ...Drivers!!
This will be the hard one...
...
Cheers
Click to expand...
Click to collapse
Isn't the drivers' job what the linux kernel is supposed to do? Why don't you go grab the kernel from the gpe/opie project and add the android image to it, partition the sd card with a windows and a linux partition like the other linux guys do, load the ramdisk like they do and see if it works. At least they have a start on the drivers for the Axim.
wovens said:
Isn't the drivers' job what the linux kernel is supposed to do? Why don't you go grab the kernel from the gpe/opie project and add the android image to it, partition the sd card with a windows and a linux partition like the other linux guys do, load the ramdisk like they do and see if it works. At least they have a start on the drivers for the Axim.
Click to expand...
Click to collapse
Well, this could be a start indeed, now how do we get android actually ON the x50v??
Hi to all i have buy the HTC Desire from http://www.clove.co.uk and my device have only 139 of ram ?
Uploaded with ImageShack.us
It's normal, every Desire has around 140mb free for apps. I think Android takes some and Sense takes some, and some is reserved probably for whatever reason. Leaving you with 140mb. Google has announced that it will be possible to install apps on the SD Card in the near future. Don't worry about it.
Everyone has the same amount of memory as yours, The rest of the memory is used by Operating system, If you want to install more apps then go for "root" and install A2SD. you can find loads of topics here and at modaco. Go through the desire sections properly and u will find all the answers to your questions.
it's rom not ram *sigh*
oh thanks for all
i always use this very simple explanation
Let's say you have some land and would like to build a parking on it.
The size of your land is 100 square meters
Each car needs 10 square meters....but in the end you can't park ten cars on the your land , because you have to deducted the white lines etc....this is the same thing with Hard drives etc .......some KBytes are needed for the root system etc.....
crypta said:
it's rom not ram *sigh*
Click to expand...
Click to collapse
Wrong, it's RAM.
ToxicWasted said:
Wrong, it's RAM.
Click to expand...
Click to collapse
Wrong to all that are saying to install app2sd. OS and applications are installed in the ROM, but launched in the RAM.
ROM = Read Only Memory
RAM = Random Access Memory
All of the application memory in the phone is non-volatile RAM.
Traditionally a ROM can only be written by flashing it offline. This is to say that runtime read/write access is atypical.
Proceeding from this premise, the only real ROM(s) in the phone are the radio and boot images. The rest of the memory holds a normal rw file system.
In theory, all of the "ROM's" here are not really ROM's at all, they're operating systems... much like Windows is an OS, not a ROM.
so I am interested in your suggestion fpr normal forum talk, to sort these things out.
in the technical explanation you are mostly right.
so how you would call the storage and the working memory in one simple term?
crypta said:
so I am interested in your suggestion fpr normal forum talk, to sort these things out.
in the technical explanation you are mostly right.
so how you would call the storage and the working memory in one simple term?
Click to expand...
Click to collapse
v-ram (volatile ram = working space)
nv-ram (non-volatile ram = storage space)
- In pure engineering terms this isn't true but the paradigm is to treat memory allocation as volatile.
But then, it does become semantic very quickly. It used to be that the only thing many people ever flashed were roms... this was because traditionally the only type of nv solid state storage that the average person had access to was a rom - never needed to flash ram because it was (mostly) volatile (yes, there are exceptions). The point being that people associated "flashing" with "roms" when "flashing" should really be associated with "solid state memory" (of any description).
So, the correct term is "flashing" yes, but we've incorrectly incorporated/encompassed the term "rom" in the extended definition.
If you flash a boot image you're doing a rom flash
If you flash a radio image you're doing a rom flash
If you "flash" a CyanogenMod "ROM" (for example) you're actually just copying an archive to a file system, expending it and executing it.
And all rather pointless because we all know what everyone means when they say "I flashed my phone"
funny to see this threads next to each other:
http://forum.xda-developers.com/showthread.php?t=675703
and clearly, theres no ROM like in commodore time (c64 / amiga), but it is called so, even in the specs of many devices.
crypta said:
so I am interested in your suggestion fpr normal forum talk, to sort these things out.
in the technical explanation you are mostly right.
so how you would call the storage and the working memory in one simple term?
Click to expand...
Click to collapse
HDD hard disk drive - where user files such as images, videos, music are stored
ROM read only memory - where the system lies (normally can not be written to)
RAM random access memory - memory in which applications are launched and remain until ended (for example anti-virus software will stay in the RAM)
I am wanting to get a clear understanding of the structure of the Android phone - hardware, firmware and software - in particular, relating to the Samsung Galaxy S4 mini, Canadian edition SGH-I257M.
I have been a computer bum since the mid-60s. I have extensive experience with machine and assembly languages, microcomputers and microcontrollers, programming "to the metal" [as we used to say], as well as C and high level languages, and a little UNIX knowledge via QNX from the century gone by. But i have been retired from all that for 15+ years and am entirely new to smartphones and Android.
So i have some questions.
But first, i have read and read and read. Too much hi-tech info the "get it" all at once. In particular i have found these threads specific to the SGH-I257M ...
Galaxy S4 Mini Archive
http://www.s4miniarchive.com/2013/12/How-to-unroot-and-unbrick-Samsung-Galaxy-S4-Mini-SGH-I257M.html
Root new S4 mini model SGH-I257M
http://forum.xda-developers.com/showthread.php?t=2470173
STOCK and ROOTED SGH-I257M
http://forum.xda-developers.com/showthread.php?t=2520299
and several others on rooting various specific-only versions of the S4 mini, CyanogenMod, flashing firmwares, etc. But no complete, tested process for rooting this specific model, or for installing CyanogenMod on it, etc.
And a little history ...
Back in the mid 60s a visiting professor at the University gave a talk entitled "Hardware, Software and Underwear". The title was of course, intentionally provocative. It was a bit mysterious to us at the time, but the idea was to encode low level software in hardware to make it run faster, among other reasons. The term underwear did not stick. Instead we have firmware, and in particular on microcomputers, the BIOS - Basic Input Output System.
Question #1: with regard to Android, my guess is the the BIOS is the interface between the physical hardware and the Linux Kernel. Is this concept of the system structure correct? ...
hardware <-> BIOS <-> Linux Kernel <-> Android System
Question #2: I am not clear on the various categories of memory. The S4 mini has a SIM card, either 8 or 16 gb memory [mine has 16], and may optionally have up to an additional 64 gb memory via a microSD card installed by the owner. Is the BIOS on a separate chip like in microcomputers? Any other memory types? [I have a feeling that i am missing something].
Question #3: Which physical memory contains each of the BIOS, the Linux Kernel and the Android system?
Question #4: I am thinking that CyanogenMod is a replacement for what i have labelled Android System in my simple structure diagram in question #1 above. Is this correct?
Question #5: The idea of rooting the phone is clear to me. I know what is the root directory on a computer hard drive and that the rooting process gives the user access to both that directory and permissions to do anything [delete, rename, replace, install, uninstall, whatever]. And that doing this voids the warranty.
When spring/summer comes along [and they will, even in this cold and frozen Canada!] i expect to be off on my motorcycle [vintage IronHead] for extended periods. I will want to do whatever to extend the battery life of my phone. So i am anticipating rooting the phone by then and perhaps installing CyanogenMod. I have not yet seen a clear process for rooting for the Canadian S4 mini SGH-I257M including making appropriate backups of the system software, or for installing CyanogenMod, but i am looking. Any pointers to this i would appreciate.
Question #5: Any books on this topic of Android system structure, especially wrt Samsung smart phones? I know, books are so last century; so maybe a website, forum thread, or whatever.
TIA! More ?s later.
Mick
OK, i got some answers on another forum, and these answers have been very helpful. So as i understand things now, ...
The BootLoader is in a rewriteable ROM, an actual physical chip
The 1.5 gb RAM is what i have been missing. This is where currently running programs are stored, temporarily, until both they are no longer running and the system needs the RAM to run another process
The 16 gb storage is equivalent to the hard drive on a PC. All software - Android system and apps - are stored here, and are loaded into the RAM when they need to run. The storage is divided into partitions.
I can see what programs are currently in RAM by Settings | more | app manager | running
I can see what programs are in storage by Settings | more | storage
As mentioned, the common use of the word ROM does not refer to an actual physical ROM chip or to software that might be loaded into one. Rather is is a generally accepted but misused term for replacing the whole [or perhaps part of the] operating system.
So now i have two more questions/thoughts ...
What about these partitions? Are these really partitions like on a PC hard drive? or are these really sub-directories of the root? There would be certain partitions, standard with the Android setup, each with a specific purpose. It would be helpful to know at least a few of these.
In my running apps list i see S Voice. Hhmmmm, i thought i deleted this app. I know i did. I do not need it to be in there, taking up space and CPU cycles. I expect that it is OK to Stop it, and that it will re-start itself next time i power off/up. I'll have to go down that list and see what else i can "put a stop to".
TIA. More ?s later.
Mick
Got some more info from the other forum, including this excellent link to an explanation of the partitions, so things are moving along ....
http://www.addictivetips.com/mobile/android-partitions-explained-boot-system-recovery-data-cache-misc/
Looks like the "partitions" are "directories", using the old MS-DOS and UNIX terminology. So once rooted, ...
cd / goes the the root directory, or
cd /recovery goes to the recovery directory
and ...
ls
would list the contents of whatever is the current directory.
Mick