what OS are working on the board so
far?
may be if they knew that there where people intrested in it they would make a version for the beagle board. also a free version so people could try it out. If your intested why not email them and let them know there is a intrest in it and we could have a new partner onboard :) |
As I see it there are 3 type of
OS ones made for other hardware and moved over to the ARM platform
Mobile phone/pda OS (mobile)
ARM Native platforms
I am not a OS expert so please correct me if I am wrong but there are some grate advantages in building OS around the Arm architecture.
Beagle OS (open source) Possibly - A nice new filing system Open GL 3D user interface Built in applications
ease to use programming language something like PHP with Arm assembler
So what do people think? - if there is enough interest I am willing to set up a website --- On Wed, 30/7/08, Jason Kridner <jkri...@gmail.com> wrote: |
FYI. I’m planning to port a small kernel called Roadrunner/pk to the board as soon as I get my hardware. The kernel is multithreaded and has POSIX threads based API but it doesn’t use virtual memory. Its really small (~40 Kbytes) and is targeted at embedded applications that require very high performance compared to a full UNIX-like design. I’ll keep the group posted on my progress with the port. I can provide anyone who is interested with documentation on the kernel design.
Thanks,
FM
Get the one you really want
- millions of new email addresses available now at Yahoo!</a
FYI. I'm planning to port a small kernel called Roadrunner/pk to the board as soon as I get my hardware. The kernel is multithreaded and has POSIX threads based API but it doesn't use virtual memory. Its really small (~40 Kbytes) and is targeted at embedded applications that require very high performance compared to a full UNIX-like design. I'll keep the group posted on my progress with the port. I can provide anyone who is interested with documentation on the kernel design.
Sounds great :) Thanks Khasim I was just thinking about that.today virtual memory Not support is not a problem with Hard drives on the way out, and with a replacement to flash that works like RAM already be produced soon there will be no need for virtual memory anyway.
Look forward to hearing more. what is the chance of some Arm optimising two. Could there be more speed to be squeeze out. I know that ARM has different modes for interrupts? Would they be supported. They offer the interrupt code a fresh set of registers saving clock cycles more registers to and from main memory. Great for a top speed kernel. Well I think so but I don't really know that much about kernels or possessor architecture.
What do people think? Would some ARM optimised kernel make a big difference or not? --- On Wed, 30/7/08, Syed Mohammed, Khasim <sm.k...@gmail.com> wrote: |
I was thinking about some basic ARM optimising of the new kernel. As I understand it smaller kernel equals faster speed. What will make the roadrunner kernel so fast on the OMAP chip is the fact that it fit's inside the level 1 Cache with space for other code to. As I understand it the level 1 code cache is 32k and the roadrunner kernel is 40k. So the whole of the kernel would not fit on arm chip it's self at one time. If we can get all the most used functions of the new OS to fit on the ARM chip's 1 cache then things will really more fast. One of the the great features of the ARM Cortex-A8 is the Thumb-2 instruction set. It mixes 16/32bit instructions to compact code with only minimal speed loss. So a 40k kernel would become 28k leaving
room for other code in the I level cache. If we can keep it small
then we will have an operating system that will make others look like
dinosaurs. What do people think? Good idea? Or have I got my thinking
wrong? is the roadrunner kernel compiled in Thum2 or in ARM? --- On Wed, 30/7/08, James Trigg <jamesl...@yahoo.co.uk> wrote: |
O I see 32k but 16K-Byte Instruction
Cache and 16K-Byte Data Cache
Could some of the kernel work on the DSP as it has it's own 1 level cache too? it's along shot but is that a possibility, just trying to think out of the box. Two heads are better than one. thought? |
Well, this is an OS kernel that was developed about 10 years ago but has been languishing on my hard drive for some time cuz I’ve been off doing other things. It’s BSD licensed and should be very simple to understand. I’ve only ever booted it on x86 machines but it should not be a big deal to get it to run on an ARM. I did start messing with it again recently thinking about adding support for x86 multicore. You’ll see some initial code for that in there. I also started writing a UHCI driver (very incomplete) in hopes of adding a USB stack to it. My goal was to get it booting self hosted off a USB stick. Definitely a long way to go towards that goal although I do have some FAT filesystem code sitting around somewhere if I ever got the USB stack in place. Anyway, link to the source code is at:
http://www.sipuseragent.net/download/pk.tgz
I am more than happy to take patches and fold them in and maintain a central source tree if that becomes something that is useful. I’ve not started working on this project because I’m still waiting on hardware but I’ll be getting going on it when I do.
Get the one you really want
- millions of new email addresses available now at Yahoo!</a
lets not knock 10 year old code as ten years ago there was less memory and processor power so code had to be small and faster. Sound's like a great start to me. Just remember the first ARM was designed by four people who as I understand it had never designed a processor before. Now look at it. There could be a day when people are buying a beagle board just because it comes with beagle OS. A very fast ease to use operating system. That's a joy to use. So what is the core values of the beagle OS.
Here are some I have thought of - Compact code (reusable module based.) - Fast ARM/ DSP/ GPU Optimized - Good looking Open GL type user interface - Basic applications built in (word, excel, ect) - Simple ease to use programming language for beginners(for apps and games) - Fits on 256 built in flash. - Open source --- On Wed, 30/7/08, Frank W. Miller <ma...@frankwmiller.net> wrote: |
was thinking that we could have some
tests on the available kernel for speed ect --- On Wed, 30/7/08, Bernardo Fanti <bfa...@gmail.com> wrote: |
I definitely won’t knock it since I wrote all of it… ;) And as I mentioned, I’ve been running it recently while I tried to add multicore support. Its still working well on x86.
Remember, its just a kernel, it has a memory manager, interrupt service routine (ISR) management, Pthreads, mutual exclusion (i.e. mutexes), console and keyboard drivers with a simple monitor/shell. I neglected to post the documentation on the design of the kernel, I’ve added that at:
http://www.sipuseragent.net/download/pk.pdf
Pretty much all the stuff you list below would have to be built on top of the kernel.
Enjoy!
Get the one you really want - millions
of new email addresses available now at Yahoo!</a
how big is uC-OS-II ? and what type of kernel is it? what sort or kernal should we be using. microkernels or monolithic kernels or may be hybrid kernels whats the best for the job? was thinking of a hybrid kernel. like Mac OS X ,could roadrunner become a hybrid kernel? I think the same kernel as mac OS X works on iphone and that uses a ARM11 chip. what would be the size diffrence? |
--- On Wed, 30/7/08, Bernardo Fanti <bfa...@gmail.com> wrote: |
I see thanks. Had a look. looks like there is a far bit of work to do moving it from X86 to ARM. but once the basics are done it would be easer to code on an arm? Yes there will be alot of work for people to get there teath into once we have a kernal to run things on. |
Roadrunner/pk and ucos are very similar in their feature set (at least the basic ucos kernel, it also has lots of addon modules for networking and such) and what they target for application development, i.e. deeply embedded systems. A big difference of course is Roadrunner/pk is open-source and ucos is not.
If you are looking to put together some sort of desktop environment, Linux will be your best bet. It has way more software that’s already integrated with it to do what you are looking for. If you want to build an embedded device application, something like Roadrunner/pk or ucos might be better.
Micro vs. monolithic vs. hybrid is really only relevant if you are using virtual addressing. Then its really just preference based on your requirements. Micro kernels are better for some things and monolithic are better for other things.
Get the one you really want
- millions of new email addresses available now at Yahoo!</a
Actually, the port should be straightforward. The hardware specific stuff is well separated. It will need to 1) boot with interrupts disabled, 2) configure the memory map, 3) setup interrupt hardware and enable interrupts, 4) set up a software tasking structure that is hardware dependent, 5) do a new driver for the console. Can a keyboard be plugged in directly or will it have to be a USB keyboard? If USB, is there a PS/2 keyboard port emulation that can be set in the USB controller? That should be about it to get it where it is now on x86.
Get the one you really want
- millions of new email addresses available now at Yahoo!</a
How about Plan9 or MINIX-3?
Other options are certainly possible as some people have Mamona,
Ubuntu, and Debian running (Google is your friend). Pointers to some
ARM distros are at http://beagleboard.blogspot.com/2008/05/distros-for-beagle.html
.
http://eLinux.org/BeagleBoard is a nice place to get started with your
Beagle, after you have gotten comfortable with running the test kernel
on http://code.google.com/p/beagleboard.
Just thinking of what would be needed
to to play a video full screen. you are going to need keyboad suport
of some kind build in to exit out of the mode. I am learning so your welcome to have a laugh if you like. :) |