Author Topic: ELF Loader for Ndless - (now ready for non-dev use)  (Read 12296 times)

0 Members and 1 Guest are viewing this topic.

Offline tangrs

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 228
  • Rating: +97/-0
    • View Profile
    • tangrs blog
Re: ELF Loader for Ndless - (now ready for non-dev use)
« Reply #15 on: January 19, 2012, 07:21:33 am »
Just a quick update on this

The ELF loader is at a point where most users can use it. I've removed the debugging console and polished it up a bit. Most users can compile it and use it for loading their ELF files now (instructions on how to build your programs to work on this is on the readme).

It's implemented as a hook onto the normal program loader so you can open ELF binaries just as easily as you do opening normal Ndless binaries.

I'd be interested to hear your feedback and any bug reports!

Thanks!

Offline DJ Omnimaga

  • Former TI programmer
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55914
  • Rating: +3152/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • DJ Omnimaga Music
Re: ELF Loader for Ndless - (now ready for non-dev use)
« Reply #16 on: January 19, 2012, 09:26:52 am »
Hmm interesting stuff, although I have no clue what is ELF at all, so I'M gonna have to do some research on the subject. I'm glad to see new Ndless-related stuff in the works again. :)

Offline ExtendeD

  • Project Author
  • LV8 Addict (Next: 1000)
  • *
  • Posts: 825
  • Rating: +167/-2
    • View Profile
Re: ELF Loader for Ndless - (now ready for non-dev use)
« Reply #17 on: January 19, 2012, 09:43:24 am »
Nice tangrs :)

For my understanding, before I find more time to look into this :
- What are the remaining issues?
- How big the loader is, and how much bigger does ELF programs are compared to the current programs?
- How far would the loader be from being able to link programs with dynamic libraries (and is this something really want looking back on the TI-68k experience)?
Ndless.me with the finest TI-Nspire programs

Offline Juju

  • Incredibly sexy mare
  • Coder Of Tomorrow
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 5730
  • Rating: +500/-19
  • Weird programmer
    • View Profile
    • juju2143's shed
Re: ELF Loader for Ndless - (now ready for non-dev use)
« Reply #18 on: January 19, 2012, 12:01:18 pm »
ELF is the executable file format used on Linux and most UNIX-based OSes, right?

Remember the day the walrus started to fly...

I finally cleared my sig after 4 years you're happy now?
THEGAME
This signature is ridiculously large you've been warned.

The cute mare that used to be in my avatar is Yuki Kagayaki, you can follow her on Facebook and Tumblr.

Offline Lionel Debroux

  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2135
  • Rating: +290/-45
    • View Profile
    • TI-Chess Team
Re: ELF Loader for Ndless - (now ready for non-dev use)
« Reply #19 on: January 19, 2012, 01:11:50 pm »
Right, juju :)

Quote
dynamic libraries (and is this something really want looking back on the TI-68k experience)?
Indeed, +1. Even a simple versioning scheme can cure a number of DLL-related woes.
Member of the TI-Chess Team.
Co-maintainer of GCC4TI (GCC4TI online documentation), TILP and TIEmu.
Co-admin of TI-Planet.

Offline tangrs

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 228
  • Rating: +97/-0
    • View Profile
    • tangrs blog
Re: ELF Loader for Ndless - (now ready for non-dev use)
« Reply #20 on: January 19, 2012, 04:40:28 pm »
Nice tangrs :)

For my understanding, before I find more time to look into this :
- What are the remaining issues?
- How big the loader is, and how much bigger does ELF programs are compared to the current programs?
- How far would the loader be from being able to link programs with dynamic libraries (and is this something really want looking back on the TI-68k experience)?

Most of the issues remaining are pretty much error checking and bug hunting and fixing.

The loader is roughly 53KB.

Depending on your linker options and program, ELF files are generally many times larger than normal binaries but it's hard to know exactly how much. To give an idea, you normally won't find a ELF file less than 30ish KB. I've seen a 480B program with an equivalent ~50KB ELF file. Weird enough, I've also seen a 53KB program with a 60KB equivalent ELF file.

I've had a thought and I think it's probably better it's made into an optional extra in Ndless since the loader contains a lot of bulk and most users won't be needing ELF files. Thoughts?

I haven't really looked into loading dynamic libraries so I'm unsure of it's complexities right now. It does seem a little messy though (i.e. as mentioned, we could easily run into an equivalent of DLL-hell). I'll take a look into it and see if I can work something out.

Offline Lionel Debroux

  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2135
  • Rating: +290/-45
    • View Profile
    • TI-Chess Team
Re: ELF Loader for Ndless - (now ready for non-dev use)
« Reply #21 on: January 20, 2012, 12:54:38 am »
In my previous post, I forgot to post something along the lines of "nice job". Please accept my apologies ;)

Quote
I've seen a 480B program with an equivalent ~50KB ELF file.
Uh, does this one contain an awful amount of debugging information, or is it just the toolchain going insane ?

The complexity of ELF is the reason why several of us had thought of the much simpler BFLT :)

DLL hell can be alleviated by using versioning (in a correct fashion).
« Last Edit: January 20, 2012, 02:16:49 am by Lionel Debroux »
Member of the TI-Chess Team.
Co-maintainer of GCC4TI (GCC4TI online documentation), TILP and TIEmu.
Co-admin of TI-Planet.

Offline Jim Bauwens

  • Lua! Nspire! Linux!
  • Editor
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1881
  • Rating: +206/-7
  • Linux!
    • View Profile
    • nothing...
Re: ELF Loader for Ndless - (now ready for non-dev use)
« Reply #22 on: January 20, 2012, 02:51:03 am »
Nice to see much progress on it.
I only understand half of what is said, but I can see its something good :D

Offline tangrs

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 228
  • Rating: +97/-0
    • View Profile
    • tangrs blog
Re: ELF Loader for Ndless - (now ready for non-dev use)
« Reply #23 on: January 20, 2012, 07:34:44 am »
In my previous post, I forgot to post something along the lines of "nice job". Please accept my apologies ;)

Quote
I've seen a 480B program with an equivalent ~50KB ELF file.
Uh, does this one contain an awful amount of debugging information, or is it just the toolchain going insane ?

The complexity of ELF is the reason why several of us had thought of the much simpler BFLT :)

DLL hell can be alleviated by using versioning (in a correct fashion).

Thanks, it's appreciated :)

I don't know what's causing that massive ELF file. I'll need to investigate what's hogging all the file size. It does seem an awful lot LOL

I'll look into BFLT - maybe I should channel my energies into writing a BFLT loader instead XD

Nice to see much progress on it.
I only understand half of what is said, but I can see its something good :D

Thanks, but it's nothing really special or anything most users would even want to use XD

@ExtendeD, loading shared libraries seem to be a little more complex than I originally thought. It's most likely doable but I'm just wondering about the performance implications of it. I'll have a crack at it some time.
« Last Edit: January 20, 2012, 07:38:55 am by tangrs »

Offline ExtendeD

  • Project Author
  • LV8 Addict (Next: 1000)
  • *
  • Posts: 825
  • Rating: +167/-2
    • View Profile
Re: ELF Loader for Ndless - (now ready for non-dev use)
« Reply #24 on: January 20, 2012, 11:52:38 am »
OK, good luck with this.
Ndless.me with the finest TI-Nspire programs

Offline alberthrocks

  • Moderator
  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 876
  • Rating: +103/-10
    • View Profile
Re: ELF Loader for Ndless - (now ready for non-dev use)
« Reply #25 on: February 11, 2012, 10:58:54 am »
Any progress on this? ELF support would be very interesting to see on the Nspire! :D
Withgusto Networks Founder and Administrator
Main Server Status: http://withg.org/status/
Backup Server Status: Not available
Backup 2/MC Server Status: http://mc.withg.org/status/


Proud member of ClrHome!

Miss my old signature? Here it is!
Spoiler For Signature:
Alternate "New" IRC post notification bot (Newy) down? Go here to reset it! http://withg.org/albert/cpuhero/

Withgusto Networks Founder and Administrator
Main Server Status: http://withg.org/status/
Backup Server Status: Not available
Backup 2/MC Server Status: http://mc.withg.org/status/

Activity remains limited due to busyness from school et al. Sorry! :( Feel free to PM, email, or if you know me well enough, FB me if you have a question/concern. :)

Don't expect me to be online 24/7 until summer. Contact me via FB if you feel it's urgent.


Proud member of ClrHome!

Spoiler For "My Projects! :D":
Projects:

Computer/Web/IRC Projects:
C______c: 0% done (Doing planning and trying to not forget it :P)
A_____m: 40% done (Need to develop a sophisticated process queue, and a pretty web GUI)
AtomBot v3.0: 0% done (Planning stage, may do a litmus test of developer wants in the future)
IdeaFrenzy: 0% done (Planning and trying to not forget it :P)
wxWabbitemu: 40% done (NEED MOAR FEATURES :P)

Calculator Projects:
M__ C_____ (an A____ _____ clone): 0% done (Need to figure out physics and Axe)
C2I: 0% done (planning, checking the demand for it, and dreaming :P)

Offline tangrs

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 228
  • Rating: +97/-0
    • View Profile
    • tangrs blog
Re: ELF Loader for Ndless - (now ready for non-dev use)
« Reply #26 on: February 21, 2012, 04:52:59 am »
Any progress on this? ELF support would be very interesting to see on the Nspire! :D

The basic loader works on the older 2.1 models but I haven't had a look on how to get it to work on Ndless 3.1 (and take advantage of it's built in file association system). I'll get around to it soon.

Offline ExtendeD

  • Project Author
  • LV8 Addict (Next: 1000)
  • *
  • Posts: 825
  • Rating: +167/-2
    • View Profile
Re: ELF Loader for Ndless - (now ready for non-dev use)
« Reply #27 on: February 21, 2012, 05:11:10 am »
Good, I'm waiting for it :)
Ndless.me with the finest TI-Nspire programs

Offline Jim Bauwens

  • Lua! Nspire! Linux!
  • Editor
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1881
  • Rating: +206/-7
  • Linux!
    • View Profile
    • nothing...
Re: ELF Loader for Ndless - (now ready for non-dev use)
« Reply #28 on: February 21, 2012, 03:55:45 pm »
Glad to see you will support Ndless 3.1 :)

Offline Lionel Debroux

  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2135
  • Rating: +290/-45
    • View Profile
    • TI-Chess Team
Re: ELF Loader for Ndless - (now ready for non-dev use)
« Reply #29 on: February 22, 2012, 02:26:47 pm »
Did you manage to cut down on the size of the massive ELF files ? :)
Member of the TI-Chess Team.
Co-maintainer of GCC4TI (GCC4TI online documentation), TILP and TIEmu.
Co-admin of TI-Planet.