Humbell MBed - The Official Thread
Humbell MBed - The Official Thread
Humbell Embed OS - "We are Humble"
Current Stage : Concept
Language : Assembly, C , C++ , C#(hopefully('cause it's badass! ))
Kernel Type : Micro
Operating System Feature's : pre-emptive,hardware multitasking.
As an end result I'm trying to Create an OS that Runs on Embedded systems, which is optimized for Game's, but can run standard applications - Basically a "TV" OS. A Good example of this is the Wii's OS (I believe it's called Gecko?) - I've played around with homebrew development on the wii - got some polygons rendering on the screen, but thought I was Really wasting my time.
Console OS's are usally different from General PC Os's like Linux and Mac, as Console os's are really just launchers that load programs from disks. - Very little of the OS is around while Games are playing, thats one reason why Games console's are faster then normal computers , and of course along with the help of ultra fast memory, and large memory Buses.
"Portability"
I want to run the kernel on Intel and ARM based embedded system's - in other words the Atom and Tegra/Cortex CPU's
I'm first however working on Intel Based CPU's, till I order my ARM Dev board
GAPI's?
I have no idea how OpenGL is actually intergrated into operating systems. And it's something I need to look into.
Obviously I will be using OpenES on ARM based CPU's
RoadMap?
I really want to design a media product first, which takes in input from SD and USB and provides an interface to play Video and movie files on the Media.
I recently Bought one of these TV media players, as my PS3 wouldn't play MKV's - it's a great little computer for £18.50 I paid for it - the res is spot on and with 5.1 surround sound, it's the buy of the year.
Just can't help thinking the OS on it could be better...
Last edited by naf456 on Fri Jan 27, 2012 4:19 pm, edited 13 times in total.
I don't suffer from insanity. I enjoy every minute of it.
- DavidCooper
- Member
- Posts: 1150
- Joined: Wed Oct 27, 2010 4:53 pm
- Location: Scotland
Re: Humble OS - The Official Thread
Couldn't agree more - I got bored with shooting things in a single week and have no desire to return to it ever again. Your friends may be normal, but normal people are weird.naf456 wrote:I don't want to be anything like them (Sitting down all day shooting some poorly animated fictional characters on an over priced console) surely that's wasting more time then studying OS development?
256MB is actually huge. You can probably achieve everything you want to do in a couple of megabytes if you're using assembler (or ten times as much if using a compiler).What I want out of the Humble project is for it to be incredibly small in size(Under 256MB) so it can fit on tiny SSD's in the Netbooks.
Most OS designers here have the same kind of aim, but I suspect future versions of Windows will be forced to up their game now that you can get dual-OS machines which allow you to chose a simpler OS to browse the Web without having to boot Windows - it gives netbooks the kind of speed you're talking about, removing all the ridiculous delays that Windows gives you.Neither do I or anyone for that matter want to wait 15 minutes to boot up a Computer....
Within 10 Seconds, I don't just want the netbook to boot, but to have fully loaded up Achilles-the integrated web browsers with full access to the internet.
You'll probably want to be able to handle different screen modes with different numbers of pixels, so if your OS and apps can handle that it's little more trouble to enable them to work in just part of the screen. Don't be too quick to rule out such functionality when it doesn't cost a lot of effort to provide it. It's often really useful to have two files open and on display at the same time. As for multitasking, if you design it well it won't be sluggish - even the slowest netbook is lightning fast when it runs a good multitasking OS with many apps open at the same time. At the very least, leave room to change your mind about this and think from the outset about whether your code will still work with different processes running concurrently and also in parallel on multiple cores - I'm sure that you will want to do this later on, so don't dig yourself into a hole.There are no windows-every application is to be displayed full screen ... There will be no support for multitasking as I believe this is the main reason why netbooks are so sluggish.
That name sounds a bit too like underwear, but you certainly will want to have something more advanced than clipboard - you'll want to be able to copy anything out of a file with ctrl+c and directly save it as a file in its own right, as well as being able to past such a file back into the middle of another file.however I don't want to slower productivity, so I have came up with 'Drawers'. Drawers are the evolution of the clipboard that application's and users can use to store masses of information, like whole webpages for example.
Nice colourful logo, by the way.
Help the people of Laos by liking - https://www.facebook.com/TheSBInitiative/?ref=py_c
MSB-OS: http://www.magicschoolbook.com/computing/os-project - direct machine code programming
MSB-OS: http://www.magicschoolbook.com/computing/os-project - direct machine code programming
Re: Humble OS - The Official Thread
Hmm... your post looks strangely similar to one I recently made: http://forum.osdev.org/viewtopic.php?f=2&t=23634 (not a big deal just pointing out the common layout)
The SSDs on Netbooks aren't *that* tiny. They're capable of storing a large linux distro. And yeah, 256MB isn't that small. Good luck even writing enough code for an OS that large.What I want out of the Humble project is for it to be incredibly small in size(Under 256MB) so it can fit on tiny SSD's in the Netbooks.
You have to admit this is an exaggeration. The worst times I've seen for a netbook with an SSD have been under a minute.Neither do I or anyone for that matter want to wait 15 minutes to boot up a Computer....
This isn't OS design as much as window management design.There are no windows-every application is to be displayed full screen
What do you mean then? That the filesystem hierarchy is limited? Surely this is still a fully functional file system that you describe.there is no file system (it's limited). ALL user files will be placed on the desktop. here you can choose to hide a certain type of file, be it music file's, video files, etc... there is still folders you can use as well, which will actually be called stacks as they 'pop' out similar to osx.
Any proof to back this up? I've not heard of such a claim.There will be no support for multitasking as I believe this is the main reason why netbooks are so sluggish.
Again, I don't think this is much of an OS design. More like a user-interface design.Drawers are the evolution of the clipboard that application's and users can use to store masses of information, like whole webpages for example.
You need an OS design before you start making an OS. Everything you've described could probably be accomplished by some special desktop environment for linux.next year or so we can look back and see how much time we wasted
Valix is an experiment in an interpreted userspace with object-oriented and functional design patterns. Developers needed! Join #valix on irc.freenode.net
- NickJohnson
- Member
- Posts: 1249
- Joined: Tue Mar 24, 2009 8:11 pm
- Location: Sunnyvale, California
Re: Humble OS - The Official Thread
I think what you really want is to install something more apt for a netbook on your netbook - Windows 7 is clearly too much for the hardware. I used to have an Eee, and Gentoo Linux ran just fine on it; any light Linux distribution or even Windows XP should be fine. Even if you were to finish the OS you're planning (which will likely take you years, and you will be out of college then anyway,) it will probably only be as useful as installing something like Windows 95 on your netbook: no modern apps will run on it, but it will work on slow hardware.naf456 wrote:At my College we have these really slow and terrible NetBooks's (ASUS EEE pc's), Taking literally 15 minutes to get to the login screen. They run on windows 7, but are optimised for windows XP.
What I want out of the Humble project is for it to be incredibly small in size(Under 256MB) so it can fit on tiny SSD's in the Netbooks.
Neither do I or anyone for that matter want to wait 15 minutes to boot up a Computer....
Within 10 Seconds, I don't just want the netbook to boot, but to have fully loaded up Achilles-the integrated web browsers with full access to the internet.
Basically, writing a whole OS to solve a small problem like this is like swatting a fly with a thermonuclear missile. I'm not saying that writing an OS is a bad idea, just that writing one with such a singular purpose--most of which is just GUI stuff, which could be done with a Linux WM--is. I would advise you to try writing something either a bit more general-purpose (so you learn about how more parts of an OS work) or a bit more internally radical (so you have a chance of attracting attention as a niche OS instead of competing with Linux).
Re: Humble OS - The Official Thread
Yes, I probably could design this as a linux Distro, But the end product isn't what I want. I want To learn the toolset of building my own operating system.Everything you've described could probably be accomplished by some special desktop environment for linux.
This is my first operating system. I don't want it to be a Huge project with masses amount of code. I want it to be very small scale.
My plan was too gain a deep understanding with this operating system into some basic mechanics, then to build Humble 2 later on down the line, say when I'm actually in University, with Multitasking, window management and all the other fancy stuff.
What I meant by that, is, that netbook SSD's can become tiny (Not that there tiny now)The SSDs on Netbooks aren't *that* tiny
Thanks. now that's one thing off my mind.Good luck even writing enough code for an OS that large.
I don't suffer from insanity. I enjoy every minute of it.
Re: Humble OS - The Official Thread
Yeah...Maybe I do need to think things through.
I don't suffer from insanity. I enjoy every minute of it.
- Brynet-Inc
- Member
- Posts: 2426
- Joined: Tue Oct 17, 2006 9:29 pm
- Libera.chat IRC: brynet
- Location: Canada
- Contact:
Re: Humble OS - The Official Thread
No way, this is just OSDev.. we frown upon people who do some initial research.naf456 wrote:Yeah...Maybe I do need to think things through.
Re: Humble OS - The Official Thread
<This Post has Been Deleted>
Last edited by naf456 on Wed Feb 01, 2012 7:00 am, edited 4 times in total.
I don't suffer from insanity. I enjoy every minute of it.
Re: Humble OS - The Official Thread
Ignore my top post. -I was being blindfolded by exaggeration.
I lack the programming experience required by such a humble project.
And thus I am researching Game Development- something a little down my street, which is a big project to get my teeth around.
Also I ave been studying PHP, CSS, HTML, ASP, and javascript .Next to strive for is Ruby and Perl.
And once project attached to those languages are done, I will studying C, OBJ-C into more detail and probably will start my OS dev Path then(Still very unlikely).
(shame- spent so much on cork boards too :L)
PS...It would be kind, if no one else stole my name for this project : "Humble" - I kinda like the ring to it (Despite me being the least humble person here)
@berkus - BTW, I don't think you get what I wanted from humble...What I meant by my first post (although it doesn't seem clear) is that Computer are really expensive- may not seem it to you and me, but for people in LEDC countries , it is.
Out of humble, I want to beable to put it on the smallest of SSD's so it would be REALLY cheap to manufacture.
I was looking at maybe 300Mhz ARM 4, 56MB of RAM, 128MB SSD, 6 inch display - still it would be very expensive- around $50 to manufacture. -But anyway, just wanted to make that clear.
I lack the programming experience required by such a humble project.
And thus I am researching Game Development- something a little down my street, which is a big project to get my teeth around.
Also I ave been studying PHP, CSS, HTML, ASP, and javascript .Next to strive for is Ruby and Perl.
And once project attached to those languages are done, I will studying C, OBJ-C into more detail and probably will start my OS dev Path then(Still very unlikely).
(shame- spent so much on cork boards too :L)
PS...It would be kind, if no one else stole my name for this project : "Humble" - I kinda like the ring to it (Despite me being the least humble person here)
@berkus - BTW, I don't think you get what I wanted from humble...What I meant by my first post (although it doesn't seem clear) is that Computer are really expensive- may not seem it to you and me, but for people in LEDC countries , it is.
Out of humble, I want to beable to put it on the smallest of SSD's so it would be REALLY cheap to manufacture.
I was looking at maybe 300Mhz ARM 4, 56MB of RAM, 128MB SSD, 6 inch display - still it would be very expensive- around $50 to manufacture. -But anyway, just wanted to make that clear.
Last edited by naf456 on Tue Jul 12, 2011 4:19 pm, edited 1 time in total.
I don't suffer from insanity. I enjoy every minute of it.
Re: Humble OS - The Official Thread
End user does not know about in deep technical detail, but they usually assume the products to have a good technology background.naf456 wrote:-A system is as strong as it's weakest link. GUI may not be the most overall item you are concerned with, but it should be. When talking about an end user, they don't care about what memory segmentation your using- they just want to get to an application to do something- be it an Internet browser or a word processor.
You simply couldn't use a bad architecture design which is a direct cause of in sluggish softwares.
And in turns, it is the marketing dept defines how and what the end-user expects.And with the End user- what defines the operating system, is the layout of how the widgets are positioned.
Product_differentiationI've seen one example OS on here which has a blue task bar, with a green start button and windows shape- exactly the same as WinXP- what's the point?!?! why not just use WinXP- it's certainly be less buggy then a hobby OS.
Scientifically, you need to study people's theory before you agree or disagree them. Drawing conclusion before actually knowing it is what we called religion.Anyway- We as OS developers, Have a Key Advantage over Microsoft- We are new...people like new.
I disagree with the Wiki- Rome wasn't built in a day, neither was it built by a single man!!
I believe if everyone worked together on this Forum, we could make one HELL of a Micro$oft Spanking B!tch of an OS!
EDIT: I don't meant anything bad with religion, religion is good so I should re-phase the above with:
Drawing conclusion before actually knowing its intent is not how scientific reasoning works.
So, I don't like M$ but I have to disagree with the following reasons.
Being new is not a key advantage over Microsoft. They have products, experience, money, and they have new brand, new products, new people.
People like new is not always true, it all depends on marketing - microsoft advantage.
Re: Humble OS - The Official Thread
If you want to make something cheap you're going about it wrong in my opinion. You instead need to figure out how to make a cheap embedded system with an OS for that system. People in places that can't afford laptops generally can't afford netbooks and use small embedded system type computers.
Re: Humble OS - The Official Thread
Thanks...I'll take any information into consideration.
Also I Have been thinking about File compression- getting a normal file, taking out the duplicate statemets in the code, and 'mapping' it out to become a smaller file.
-I was hoping for opinions on this subject, as in integrating it into the O/S.
Every file will be compressed, and 'unzipped' at runtime.
I have also been thinking about the problems this could cause.
ie Unzipping a file means the uncompressed file and the actual files will be stored in memory at the same time- this is wasting precious system resources.
Also, Unzipping big files takes a long time, thus application load times may become unrealistic.
-it's just an idea- I'm trying to be more lateral
as in my previous post I am studying game engine development to gain the coding skill required for this project. -first starting off High level development with DirectX framework and OpenGL, then exploring Graphics rendering pipeline and the registers I can play with, within the lower levels.
I hope it will make me more used to low level programming and learn even more about the Windows operating system - however I believe this topic is for another forum :L
Also I Have been thinking about File compression- getting a normal file, taking out the duplicate statemets in the code, and 'mapping' it out to become a smaller file.
-I was hoping for opinions on this subject, as in integrating it into the O/S.
Every file will be compressed, and 'unzipped' at runtime.
I have also been thinking about the problems this could cause.
ie Unzipping a file means the uncompressed file and the actual files will be stored in memory at the same time- this is wasting precious system resources.
Also, Unzipping big files takes a long time, thus application load times may become unrealistic.
-it's just an idea- I'm trying to be more lateral
as in my previous post I am studying game engine development to gain the coding skill required for this project. -first starting off High level development with DirectX framework and OpenGL, then exploring Graphics rendering pipeline and the registers I can play with, within the lower levels.
I hope it will make me more used to low level programming and learn even more about the Windows operating system - however I believe this topic is for another forum :L
I don't suffer from insanity. I enjoy every minute of it.
Re: Humble OS - The Official Thread
Real time compression/decompression is not a realistic goal for a netbook or an embedded system, or even most modern computing systems.
I'm not sure if learning about the windows OS in depth is worth it. I'd suggest Tanenbaum's book on Minix or some such thing. The main thing about learning the lower level programming is really getting a grip on the structure and execution of low level programming, assembly, and C. Learning low level game programming can certainly help towards that goal, although I know many game programmers who have many gaps in their knowledge of low level programming.
I also would recommend reading up on hardware, specifically processors (and more specifically 80386+).
I'm not sure if learning about the windows OS in depth is worth it. I'd suggest Tanenbaum's book on Minix or some such thing. The main thing about learning the lower level programming is really getting a grip on the structure and execution of low level programming, assembly, and C. Learning low level game programming can certainly help towards that goal, although I know many game programmers who have many gaps in their knowledge of low level programming.
I also would recommend reading up on hardware, specifically processors (and more specifically 80386+).
Re: Humble OS - The Official Thread
@MDM
Yes, But I need to learn the C/C++ libraries better along with Templates, linked lists, binary trees and alike.
Also A Game engine is simple in the same consideration as building an Operating system.
Again-Also a game engine can get as complex as I want it, where as an operating system will/has started off at an unenforcible learning curve for me as I don't have the required programming skill to feasibly operate a CPU in a lower levelled state.
I'm soon going to purchase an xGameStation kit to develop for.
These are embedded system used as Game Console's with similar characteristics to the Programming when providing functionality to the needed algorithms I need to compute for building a basic operating system.
The xGameStation kit can also require you to build up the PCB board, working with hardware even further and understanding the true science of how it works. In other words, it will be truly an amazing experience.
I do recommend you do take a peek if not familiar with Hardware Development: http://www.xgamestation.com/view_product.php?id=32
Hopefully now I can get back to DirectX
EDIT: Man I hate OS development...I soo desperately want to start, but I just don't get how to structure things like GDT entries in code... Why you use char pointers to define it's offsets? I never get it?
I'm reading a book "Game Data Types and Algorithms" Which hopefully will flatten out the bumps...
Yes, But I need to learn the C/C++ libraries better along with Templates, linked lists, binary trees and alike.
Also A Game engine is simple in the same consideration as building an Operating system.
Again-Also a game engine can get as complex as I want it, where as an operating system will/has started off at an unenforcible learning curve for me as I don't have the required programming skill to feasibly operate a CPU in a lower levelled state.
I'm soon going to purchase an xGameStation kit to develop for.
These are embedded system used as Game Console's with similar characteristics to the Programming when providing functionality to the needed algorithms I need to compute for building a basic operating system.
The xGameStation kit can also require you to build up the PCB board, working with hardware even further and understanding the true science of how it works. In other words, it will be truly an amazing experience.
I do recommend you do take a peek if not familiar with Hardware Development: http://www.xgamestation.com/view_product.php?id=32
Hopefully now I can get back to DirectX
EDIT: Man I hate OS development...I soo desperately want to start, but I just don't get how to structure things like GDT entries in code... Why you use char pointers to define it's offsets? I never get it?
I'm reading a book "Game Data Types and Algorithms" Which hopefully will flatten out the bumps...
Last edited by naf456 on Tue Oct 18, 2011 2:47 am, edited 1 time in total.
I don't suffer from insanity. I enjoy every minute of it.
Re: Humble OS - The Official Thread
[off topic] I bought one of those kits "xGameStation" some years ago, you have lots of fun play with it and learning at the same time.