Jump to content

21/May r15 - MoDaCo Custom ROM for Nexus One with Online Kitchen - EPF30 Eclair


Guest PaulOBrien

Recommended Posts

Guest Paul

I noticed that if you selected Dropbear, it would disable JIT... so i've added seperate options in the kitchen so you can have both.

P

Link to comment
Share on other sites

And what does that mean exactly???

note for all the nitpickers out there, this isn't meant to be 100% technically accurate, rather it'S meant to be understandable

You know "machine language", right? The instructions a CPU understands. Normally programes are compiled into machine language so that the CPU can understand them and run them. That's one of the reasons, back in the day, you couldn't just take a Windows program and run it on a PowerPC Mac. (there were other reasons of course, related to the way those instructions were setup, and the available software that programs could call upon, etc)

Java programs are different, though. Since Java was supposed to "run anywhere", here's what the Java guys came up to allow that: instead of compiling Java programs to machine code, they compiled it to Java machine code - or bytecode as they called it. That way all they had to do was for every platform (Windows, Mac, Linux, Solaris, etc) they had to write a Java interpreter - the Java Virtual Machine - that would interpret this bytecode in real-time and transform it into machine language.

Thus came Java's reputation for slow performance, because for every instruction the program would run, it would have to be translated immediately into machine language. Imagine doing this on 486's and Pentiums lol.

After some time, Sun came up with JIT. The Just-In-Time compiler. What it would do is when you run the program, or when a chunk of Java bytecode is loaded to be executed, it would instantly compile all of that bytecode into machine language, and then every time that code is called it would immediately run the machine language instead of interpreting each instruction from bytecode to machine code. That did improved performance of Java big time (although it was still too slow on PCs of the time).

Since the Android phones run ARM processors rather than Java CPUs (whatever happened to all the Java CPU projects of the 90s? lol), and since all Android apps are made in Java, that means they're all in bytecode that needs to be interpreted for the ARM cpu to understand it. Hence JIT should improve performance by compiling things.. just in time for them to run...!

Hope that helps :(

Link to comment
Share on other sites

note for all the nitpickers out there, this isn't meant to be 100% technically accurate, rather it'S meant to be understandable

You know "machine language", right? The instructions a CPU understands. Normally programes are compiled into machine language so that the CPU can understand them and run them. That's one of the reasons, back in the day, you couldn't just take a Windows program and run it on a PowerPC Mac. (there were other reasons of course, related to the way those instructions were setup, and the available software that programs could call upon, etc)

Java programs are different, though. Since Java was supposed to "run anywhere", here's what the Java guys came up to allow that: instead of compiling Java programs to machine code, they compiled it to Java machine code - or bytecode as they called it. That way all they had to do was for every platform (Windows, Mac, Linux, Solaris, etc) they had to write a Java interpreter - the Java Virtual Machine - that would interpret this bytecode in real-time and transform it into machine language.

Thus came Java's reputation for slow performance, because for every instruction the program would run, it would have to be translated immediately into machine language. Imagine doing this on 486's and Pentiums lol.

After some time, Sun came up with JIT. The Just-In-Time compiler. What it would do is when you run the program, or when a chunk of Java bytecode is loaded to be executed, it would instantly compile all of that bytecode into machine language, and then every time that code is called it would immediately run the machine language instead of interpreting each instruction from bytecode to machine code. That did improved performance of Java big time (although it was still too slow on PCs of the time).

Since the Android phones run ARM processors rather than Java CPUs (whatever happened to all the Java CPU projects of the 90s? lol), and since all Android apps are made in Java, that means they're all in bytecode that needs to be interpreted for the ARM cpu to understand it. Hence JIT should improve performance by compiling things.. just in time for them to run...!

Hope that helps :)

thank you very much for taking the time and effort to answer my question. I really appriciate it. I know i am not the only one that doesnt understand. I wish i could get this kinda help on the desire 22.1 board.

Link to comment
Share on other sites

thank you very much for taking the time and effort to answer my question. I really appriciate it. I know i am not the only one that doesnt understand. I wish i could get this kinda help on the desire 22.1 board.

cheers, and for what it's worth I would have replied the exact same thing in the Desire ROM thread if I had seen it there :)

sns

Link to comment
Share on other sites

  • 1 month later...
Guest mlevin

Hey folks,

Does anyone have a tun.ko that works with this ROM?arch a single thread, and I didn't want to do a control-F search on 56+ pages of messages...

Thanks

Edited by mlevin
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.