![]() |
Darwin/ARM running on a Nokia N900
Quote:
http://winocm.moe/projects/research/...milestone-one/ [via osnews.com] |
ios core running on N900
|
Re: ios core running on N900
Quote:
http://talk.maemo.org/showthread.php...87#post1388387 But your thread title is better for average Joe... |
Re: ios core running on N900
i had search but i cannt find . Thanks
will others make a UI? |
Re: Darwin/ARM running on a Nokia N900
It's all open sauce.
A little birdie told me this only builds properly on Linux hosts ('buntu 13.10 confirmed OK); building with the target OMAP3430_RX51 produces a binary you can combine with GenericBooter which passes... stuff along from the boot environment (u-boot) to the xnu kernel. The little birdie also told me that a real N900 on-hand (this was ported first to the N900 QEMU...) would help - you may want to send the guy one to help 'em along! Birdie also notes that the recommended userland filesystem package for this would be iPhone OS 4.3.5. Accelerated graphics don't work for now, so you're stuck in console (non-single user at least!) mode. This would also be semi-effortlessly portable to the N9/50 if a u-boot port was made. The N900 port is a good place to start. Hardware keyboard doesn't work. Yet, at least. Use the serial console if you need it. |
Re: Darwin/ARM running on a Nokia N900
he's done a great job but how its useful for us N900 users ? any benefits ? or can we run iOS apps with it ? sorry for the noob questions.
|
Re: Darwin/ARM running on a Nokia N900
Hey guys, it's been a while since I've been here and I'm sure a lot has changed, good to see that some of the older members on this site have stuck around. :)
I'm currently one of the maintainers of this project (I'm primarily working on developer tools for this project). If you want to try this out on your N900, you will either need a recent version of Ubuntu or Linux Mint (I've been using Mint 15 32-bit to build and test everything). I plan to push fixes to xnu-deps-linux to resolve problems for other distros when I get the time. You will also need a fairly recent version of Clang (preferably 3.4) and a copy of the CodeSorcery toolchain (arm-eabi-none). IMPORTANT NOTE: While xnu does boot on the N900, we still need to implement a TWL4030 watchdog kicker to keep the system alive while booted. Until we get this done, you will need to enable R&D mode on your N900. Also, we still need to implement a keyboard driver. This will require writing an I2C driver that can be used to talk to the TWL4030. If anyone is interested in working on this, we would greatly appreciate your help. :) Also something important to remember: unix signal support is still a work in progress, so until that is worked out, job control doesn't work. (eg: Using Ctrl-C crashes the kernel). I would recommend that you build things in the following order: (dependencies for developer tool components are listed in their respective README.md) Code:
# Build the container tool |
Re: Darwin/ARM running on a Nokia N900
Quote:
I do have to ask though, why did you choose to port Darwin over FreeBSD? I'm struggling to think of any advantage for choosing Darwin unless you have some kind of crazy long-term goal of an iOS or OS X compatibility layer. :P |
Re: Darwin/ARM running on a Nokia N900
Quote:
Binaries compiled for iOS actually already do run (look for Terminal packages on Cydia...) Binary kernel drivers from iOS devices will very likely not work - which means no SGX535 driver (among others) Also, the way OMAP handles the framebuffer (OMAPFB, OMAPDSS) means that getting iOS as-is on the N9/50/00 is a moonshot. The biggest blocker for daily use right now is the keypad not working. IIRC you have to use it with a serial terminal for now. |
Re: Darwin/ARM running on a Nokia N900
Quote:
As for why he chose to work on this project, his explanation can be seen here. As for why I am getting involved? I think Darwin is a pretty interesting OS and I figured that it would be a fun learning experience to get involved. :) EDIT: Err, I see that Hurrian beat me to it :) |
Re: Darwin/ARM running on a Nokia N900
in 2050 there will be ios 3 in n900:D
|
Re: Darwin/ARM running on a Nokia N900
Quote:
By the way, it has been said in websites posted in comments above, that this project is in a non-UI state at this time, but what are the benefits of porting on the N900, will we be able to run OSX/iOS apps through command line, and from a long term view, will it be possible to port an UI on this??? |
Re: Darwin/ARM running on a Nokia N900
Quote:
As for GUI support, this should be attainable by adapting a version of OSX's IOGraphics for the kernel (apple already uses an embedded profile of IOGraphics for the iOS kernel). Also to note, some iOS kernel extensions, like AppleMobileFileIntegrity, already work without problems with this kernel. |
Re: Darwin/ARM running on a Nokia N900
Quote:
Currently, I do debug in QEMU and I have other people test the kernels on their hardware. Luckily, not so much of the kernel is platform dependent, so I can do debug on my BeagleBoard xM, or an iPhone 4. Let me know if you can get me an N900 for development. I would really appreciate it. |
Re: Darwin/ARM running on a Nokia N900
Quote:
|
Re: Darwin/ARM running on a Nokia N900
Quote:
|
Re: Darwin/ARM running on a Nokia N900
Quote:
|
Re: Darwin/ARM running on a Nokia N900
Quote:
|
Re: Darwin/ARM running on a Nokia N900
Quote:
Hmm... I would gladly get you one (not my own, though ;-) ). Maybe, this one? Any news? I have read Milestone One; and I see GitHub is alive. Would you consider using GNUstep as GUI, with time? Thank you. Best wishes. ~~~~~~~~~~~~~~~~~ Per aspera ad astra... |
Re: Darwin/ARM running on a Nokia N900
|
Re: Darwin/ARM running on a Nokia N900
Quote:
So far since that last milestone update a few things have changed. The most notable changes include proper support for UNIX signals (using signal trampoline) and improved thread handling (support for more thread states, ect). I'm planning to eventually fix kxld so kernel extensions will be able to be dynamically loaded so we won't need to muck around with building kernelcaches. Unfortunately because of school I won't be able to investigate this anytime soon. Perhaps if I don't have too much work over spring break I can try to get that hammered out. Btw, updated information on building a bootable image can be found here. (warning: this wiki is a work-in-progress and is incomplete - I'm still investigating a more organized way of compiling device trees). Once we've overcome the problem with kernel extensions, eliminate some remaining deadlock problems, and perhaps investigate ways to make pmap a little more optimized, then we can worry about a GUI. ;) |
Re: Darwin/ARM running on a Nokia N900
Well, I for one second Wikiwide's willingness to contribute money to get one (or more) of you an N900. Personally, I'd rather see people reversing N900 components so that we can get a purely-libre build of Maemo 5 someday, while this iOS stuff project interests me only as a very low priority, BUT, I think there's a LOT of merit in principle in such a project succeeding.
|
Re: Darwin/ARM running on a Nokia N900
Quote:
I'll also add that if anyone is interested in participating in this project the help would be greatly appreciated. Despite winocm appointing me and a few others to maintain this project, I've pretty much been the only person doing any work on this project since September of last year (and I'm not giving up! :D). The next major endeavor that will need to be taken will be to arrange the source code for userspace components in such a way that those components can be built with Make (instead of Xcode). If I can get extra help we should be able to get this done within a reasonable amount of time, however if I end up doing this alone it will likely take a good chunk of next summer to complete. |
Re: Darwin/ARM running on a Nokia N900
Quote:
|
Re: Darwin/ARM running on a Nokia N900
Quote:
|
Re: Darwin/ARM running on a Nokia N900
Proposal to council/board?:
set-up a separate bank account so that people can transfer money (as a pure donation) to it. This will be used for funding/donating to interesting projects. Perhaps people/projects can nominate themselves or be nominated by others, and every 3 months a poll is made (within the community) to decide which projects get how much. |
Re: Darwin/ARM running on a Nokia N900
1 Attachment(s)
|
Re: Darwin/ARM running on a Nokia N900
Quote:
|
Re: Darwin/ARM running on a Nokia N900
No?????? How could that happen?
Well, that illustrates how much in touch with TMO politics I am. Good job I did not get elected :) |
Re: Darwin/ARM running on a Nokia N900
Quote:
SO welcome to #maemo-meeting today at 21:00UTC to present the idea to the council. |
Re: Darwin/ARM running on a Nokia N900
Quote:
|
Re: Darwin/ARM running on a Nokia N900
Quote:
|
Re: Darwin/ARM running on a Nokia N900
oenthaa,
Since I wan't able to PM you the link and since it would make more sense to share this for everyone else here is the device tree: NOTE: this is essentially a slightley modified RealView PB-A8 dt, I need more time to do a proper one for RX-51. Code:
<?xml version="1.0" encoding="UTF-8"?> Code:
image3maker -t xmdt -f xmdt.plist -o GenericBooter/images/Ramdisk.img3 |
Re: Darwin/ARM running on a Nokia N900
Quote:
|
Re: Darwin/ARM running on a Nokia N900
Quote:
Hopefully, being absent will not become a fashion. Better late than never ;-) Thank you. Best wishes. ~~~~~~~~~~~~~~~~~ Per aspera ad astra... |
Re: Darwin/ARM running on a Nokia N900
hey some news??
|
Re: Darwin/ARM running on a Nokia N900
|
Re: Darwin/ARM running on a Nokia N900
Hey guys, sorry for the lack of any significant updates..
Unfortunately progress has significantly slowed down due to a couple of reasons; first due to a rather nasty but obscure bug in the security framework (mac_labelzone_free() in security/mac_label.c) that causes metadata to get lost, causing a kernel panic sometime later on in the boot up phase and sometimes in the shutdown phase of the kernel. The second reason is due to other responsibilities that are unrelated to my work with this project. Going back to the security framework bug, my first hypothesis on this was that something was wrong with how pages were being allocated, but that didn't appear to be the case as mac_labelzone_free gets called hundreds of times before this bug gets triggered so that presumably isn't the cause. My second hypothesis is that data isn't being properly handled during context switching/stack handoffs and that part of the thread's pcb structure (that contains this security metadata) is getting corrupted/overwritten. My third hypothesis is that something in the scheduler isn't working in the right sequence due to some unhandled condition that it expects and as a result the process thread is terminated and reinitialized at the wrong time. I've been spending many hours on weeding out this bug to no avail, but I'm not giving up. This whole thing has been quite a learning process for me and I want this project to move forward. If anyone wants to try their hand at weeding out this bug, your contribution would be greatly appreciated. Building instructions to get this fired up in qemu can be found here. (NOTE: use GenericBooter-old for now as device tree setup is a bit of a mess atm). |
Re: Darwin/ARM running on a Nokia N900
Apple recently open sourced the XNU kernel on ARM. Will Darwin on the N900 see a revival?
|
All times are GMT. The time now is 23:17. |
vBulletin® Version 3.8.8