Project idea wanted for undergraduate comp engg students
Project idea wanted for undergraduate comp engg students
Hi.
Four undergraduate computer engineering students are looking for project ideas in OS development. Something new, experimental and easily implementable in Linux programming environment. If you have even topics which we can research on we would be most grateful.
Thanks
Four undergraduate computer engineering students are looking for project ideas in OS development. Something new, experimental and easily implementable in Linux programming environment. If you have even topics which we can research on we would be most grateful.
Thanks
Re: Project idea wanted for undergraduate comp engg students
There are a ton of topics out there.
Let's see.. a quick list from the top of my head(note, some of these have been implemented, or at least attempted)
Everything is metadata in an OS.
Using self-writing code for just about everything(AKA Synthesis kernel)
Treating the filesystem as a database
Using any other language but C, ASM, or C++ for a kernel is relatively new and experimental(not exactly recommending it though)
A Virtual machine monitor(this has been done a few times though)
Executing SMM code in your OS
Memory mapping to the extreme(probably 64 bit only)
Everything is in the filesystem(AKA Plan 9)
the possibilities are endless. It just depends how much work you want to put out..
Let's see.. a quick list from the top of my head(note, some of these have been implemented, or at least attempted)
Everything is metadata in an OS.
Using self-writing code for just about everything(AKA Synthesis kernel)
Treating the filesystem as a database
Using any other language but C, ASM, or C++ for a kernel is relatively new and experimental(not exactly recommending it though)
A Virtual machine monitor(this has been done a few times though)
Executing SMM code in your OS
Memory mapping to the extreme(probably 64 bit only)
Everything is in the filesystem(AKA Plan 9)
the possibilities are endless. It just depends how much work you want to put out..
Re: Project idea wanted for undergraduate comp engg students
Hi,
As an CS/SwEng undergraduate studying OS development in my spare time, I feel I'm qualified to give you a few pointers.
There appears to be conflicting aims in your question:
There are some things that match your "new, experimental" requirement - managed operating systems like Singularity and Cosmos seem to have a lot of good, new ideas behind them. If you have a mathematical background, you could look into real-time operating systems - there are algorithms for schedulability, complexity and meeting deadlines that are being actively developed; again though you could probably not find a more difficult sector.
Remember though, if you're only doing a Bachelor's degree, you don't need anything that's new. You don't need to push the boundaries of global knowledge, like you do with a Masters or PhD. All you have to do is show competence in project planning, management and evaluation.
If you're doing a Masters, well, I would still advise you to stay away. There's not much you can do in a one year course unless you already know a hell of a lot about the area, and by the mere fact that you're asking this question I can infer that you don't.
There aren't many research topics in general purpose OSes at the moment, which is why my Masters is actually going to be on compilers and parallelism. Loads of new ideas there, perhaps you could check that out instead?
Failing that, if you could get back to us with some thoughts about your prior experience that would help. Quite honestly, most undergrads would not be up to research in this sector.
Cheers,
James
As an CS/SwEng undergraduate studying OS development in my spare time, I feel I'm qualified to give you a few pointers.
There appears to be conflicting aims in your question:
...looking for project ideas in OS development
Nothing in this field is easy, least of all "new, experimental" things. The field of OS development is probably one of the hardest you will ever come across.and easily implementable
There are some things that match your "new, experimental" requirement - managed operating systems like Singularity and Cosmos seem to have a lot of good, new ideas behind them. If you have a mathematical background, you could look into real-time operating systems - there are algorithms for schedulability, complexity and meeting deadlines that are being actively developed; again though you could probably not find a more difficult sector.
Remember though, if you're only doing a Bachelor's degree, you don't need anything that's new. You don't need to push the boundaries of global knowledge, like you do with a Masters or PhD. All you have to do is show competence in project planning, management and evaluation.
If you're doing a Masters, well, I would still advise you to stay away. There's not much you can do in a one year course unless you already know a hell of a lot about the area, and by the mere fact that you're asking this question I can infer that you don't.
There aren't many research topics in general purpose OSes at the moment, which is why my Masters is actually going to be on compilers and parallelism. Loads of new ideas there, perhaps you could check that out instead?
Failing that, if you could get back to us with some thoughts about your prior experience that would help. Quite honestly, most undergrads would not be up to research in this sector.
Cheers,
James
- piranha
- Member
- Posts: 1391
- Joined: Thu Dec 21, 2006 7:42 pm
- Location: Unknown. Momentum is pretty certain, however.
- Contact:
Re: Project idea wanted for undergraduate comp engg students
What about AI in the kernel? What I like most would be a scheduler that adjusts itself to suit the needs of the system that it is running on. It has say (arbitrary number) 10 values that make it run differently, and each time the computer runs, it perfects itself for speed.
What I would like to see is a kernel (micro or mono) that takes full advantage of all CPU stuff (sysenter, APIC, SMP). And everything is build from the ground up. This is not going to be easy, as there are many specs to read for this.
-JL
What I would like to see is a kernel (micro or mono) that takes full advantage of all CPU stuff (sysenter, APIC, SMP). And everything is build from the ground up. This is not going to be easy, as there are many specs to read for this.
-JL
SeaOS: Adding VT-x, networking, and ARM support
dbittman on IRC, @danielbittman on twitter
https://dbittman.github.io
dbittman on IRC, @danielbittman on twitter
https://dbittman.github.io
- Love4Boobies
- Member
- Posts: 2111
- Joined: Fri Mar 07, 2008 5:36 pm
- Location: Bucharest, Romania
Re: Project idea wanted for undergraduate comp engg students
Basically this is what schedulers try to do anyway so if a good algorithm is found, your dynamically choosing policy method fails. On the other hand, there might not be a perfect algorithm and changing the policy for a certain workload might also be a solution. But there are many types of workloads and many policies to be implemented so it can be tedious, error prone and of course, incomplete. A genetic algorithm for a scheduler might be nice and closer to the solution, though.piranha wrote:What about AI in the kernel? What I like most would be a scheduler that adjusts itself to suit the needs of the system that it is running on. It has say (arbitrary number) 10 values that make it run differently, and each time the computer runs, it perfects itself for speed.
"Computers in the future may weigh no more than 1.5 tons.", Popular Mechanics (1949)
[ Project UDI ]
[ Project UDI ]
- salil_bhagurkar
- Member
- Posts: 261
- Joined: Mon Feb 19, 2007 10:40 am
- Location: India
Re: Project idea wanted for undergraduate comp engg students
I think something that can be simpler at its earlier stages, but can be expanded as much as you want, is a file system. You could design a file system for storage devices that attempts to solve the problems that file systems face. These could include fragmentations, data transfer bottlenecks, reliability etc.
You could start off with a simple implementation that has no fragmentation support, and then go on adding features depending on how much time you get. Features could extend to fragmentation, hard links, permissions, and even journalling.
You could start off with a simple implementation that has no fragmentation support, and then go on adding features depending on how much time you get. Features could extend to fragmentation, hard links, permissions, and even journalling.
Re: Project idea wanted for undergraduate comp engg students
While that is a good idea for a project, it really is a fruitless exercise - Creating a good filesystem is an extremely difficult task; creating a better filesystem is really not likely unless you totally know your stuff beforehand.salil_bhagurkar wrote:I think something that can be simpler at its earlier stages, but can be expanded as much as you want, is a file system. You could design a file system for storage devices that attempts to solve the problems that file systems face. These could include fragmentations, data transfer bottlenecks, reliability etc.
You could start off with a simple implementation that has no fragmentation support, and then go on adding features depending on how much time you get. Features could extend to fragmentation, hard links, permissions, and even journalling.
- salil_bhagurkar
- Member
- Posts: 261
- Joined: Mon Feb 19, 2007 10:40 am
- Location: India
Re: Project idea wanted for undergraduate comp engg students
Considering that, IMHO, you could also think of making an implementation of an existing file system. Few of my friends for example, added minimal ext4 read support to the new GRUB (bootloader).JamesM wrote: Remember though, if you're only doing a Bachelor's degree, you don't need anything that's new. You don't need to push the boundaries of global knowledge, like you do with a Masters or PhD. All you have to do is show competence in project planning, management and evaluation.
Re: Project idea wanted for undergraduate comp engg students
Thank-you everybody.
As for my background-yes this is an undergraduate project and not a masters project. It is a final year project for a 4-year bachelor in computer engineering degree course. We are 4 people who will be working on the project for approximately 6 months. We have studied OS basics thereotically and have basic working knowledge of UNIX.
Yes we would be happy to implement something that already exists. By easily implementable i meant at the undergraduate level. I dont think we have either the knowledge or the time to do anything path breaking
The focus is more on learning during the entire project implementation process.
As for my background-yes this is an undergraduate project and not a masters project. It is a final year project for a 4-year bachelor in computer engineering degree course. We are 4 people who will be working on the project for approximately 6 months. We have studied OS basics thereotically and have basic working knowledge of UNIX.
Yes we would be happy to implement something that already exists. By easily implementable i meant at the undergraduate level. I dont think we have either the knowledge or the time to do anything path breaking
The focus is more on learning during the entire project implementation process.
Re: Project idea wanted for undergraduate comp engg students
I would go for a UNIX clone then.. there is a defined interface, so you won't really make any breaking news there, but there is plenty of different ways to implement a unix clone..
Re: Project idea wanted for undergraduate comp engg students
---REMOVED---shweta wrote:Hi.
Four undergraduate computer engineering students are looking for project ideas in OS development. Something new, experimental and easily implementable in Linux programming environment. If you have even topics which we can research on we would be most grateful.
Thanks
Last edited by imate900 on Sun Jun 28, 2009 5:02 pm, edited 1 time in total.
Current work on a OS: SauOS (project homepage: http://code.google.com/p/sauos/)
- Combuster
- Member
- Posts: 9301
- Joined: Wed Oct 18, 2006 3:45 am
- Libera.chat IRC: [com]buster
- Location: On the balcony, where I can actually keep 1½m distance
- Contact:
Re: Project idea wanted for undergraduate comp engg students
That's both not an answer, and factually wrong. A linux environment does not imply the presence of any compilers.
Re: Project idea wanted for undergraduate comp engg students
Hi,
I'm making a real mode os fully with asm
as a fourth year project for my five years informatic engineering
it's fun and I learnt alot.
Good luck
I'm making a real mode os fully with asm
as a fourth year project for my five years informatic engineering
it's fun and I learnt alot.
Good luck
The man who follows the crowd will usually get no further than the crowd.
The man who walks alone is likely to find himself in places
no one has ever been before.
The man who walks alone is likely to find himself in places
no one has ever been before.
Re: Project idea wanted for undergraduate comp engg students
Hi,
take a look at my project nucleos. The goal of this project to create GNU compliant micro-kernel called nucleos. The
base of code was adopted from recent minix3 however it focuses only to kernel-server-driver stuff. At present I am
working on ELF support and then planning to port glibc.
Regards,
devel
take a look at my project nucleos. The goal of this project to create GNU compliant micro-kernel called nucleos. The
base of code was adopted from recent minix3 however it focuses only to kernel-server-driver stuff. At present I am
working on ELF support and then planning to port glibc.
Regards,
devel