Artificial Intelligence project ideas related to OSDev
- iocoder
- Member
- Posts: 208
- Joined: Sun Oct 18, 2009 5:47 pm
- Libera.chat IRC: iocoder
- Location: Alexandria, Egypt | Ottawa, Canada
- Contact:
Artificial Intelligence project ideas related to OSDev
Hi friends!
I'm looking for ideas for an AI project that can be related to osdev. Is there any interesting problem in operating system design that can be solved using AI techniques? By AI techniques, I mean anything that could be put under the umbrella term 'AI'.
Best.
I'm looking for ideas for an AI project that can be related to osdev. Is there any interesting problem in operating system design that can be solved using AI techniques? By AI techniques, I mean anything that could be put under the umbrella term 'AI'.
Best.
Re: Artificial Intelligence project ideas related to OSDev
You can try to implement a scheduler. Multi-threaded, multi-core with a set of optimizations suitable for particular environments like databases, number crunchers, web servers and so on.
My previous account (embryo) was accidentally deleted, so I have no chance but to use something new. But may be it was a good lesson about software reliability
Re: Artificial Intelligence project ideas related to OSDev
Well, what do you mean by "OSDev"? Does something else count other than scheduling, memory management, and file-system? What about "applied OSDev" things like making typing and writing experience better?iocoder wrote:Hi friends!
I'm looking for ideas for an AI project that can be related to osdev. Is there any interesting problem in operating system design that can be solved using AI techniques? By AI techniques, I mean anything that could be put under the umbrella term 'AI'.
Best.
-
- Member
- Posts: 1146
- Joined: Sat Mar 01, 2014 2:59 pm
Re: Artificial Intelligence project ideas related to OSDev
I think an OS that uses some form of AI to manage system resources sounds like an interesting concept, although in practice it might be too unpredictable to be useful and performance will probably be an issue. A simple form of AI would be "self-optimisation" by measuring resource usage and performance and then attempting to adjust weightings in the resource management subsystems to minimise resource usage and maximise performance, and this isn't likely to induce too much of a performance penalty of its own and should be fairly predictable especially as the weightings could be saved/restored and manually adjusted or "frozen" to specific values.
When you start writing an OS you do the minimum possible to get the x86 processor in a usable state, then you try to get as far away from it as possible.
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
Re: Artificial Intelligence project ideas related to OSDev
I do exactly this -- but for very coarse resource management (e.g., "should I bring another processor online, now?") and to evaluate "apparent successes" (e.g., the results of a particular task binding).onlyonemac wrote:I think an OS that uses some form of AI to manage system resources sounds like an interesting concept, although in practice it might be too unpredictable to be useful and performance will probably be an issue. A simple form of AI would be "self-optimisation" by measuring resource usage and performance and then attempting to adjust weightings in the resource management subsystems to minimise resource usage and maximise performance, and this isn't likely to induce too much of a performance penalty of its own and should be fairly predictable especially as the weightings could be saved/restored and manually adjusted or "frozen" to specific values.
And, yes, performance is an issue -- you can't make these sorts of decisions at run-time; but, you can review your past decisions and use that information in an expert system to refine your choices for future decisions. For example, if binding a particular set of tasks to a processor node resulted in none of them missing deadlines, then that might be a good choice for the next similar scheduling/task binding decision. OTOH, if several tasks missed their deadlines -- or, achieved very low "value functions" -- you might want to try something different, next time.
This makes sense if you have periodic and "typically repeating" workloads -- why go through the entire decision making process, again, each time you have to make the decision? Why not save what you learned from the previous time you made the decision? (esp as many problems are NP-hard and can't be definitively solved).
And, if you have the AI framework in place (because you are using it in your applications to manage the resources that the user perceives), then there is little cost in leveraging that capability FBO the OS!
specify, design, implement, verify
-
- Member
- Posts: 396
- Joined: Wed Nov 18, 2015 3:04 pm
- Location: San Jose San Francisco Bay Area
- Contact:
Re: Artificial Intelligence project ideas related to OSDev
process scheduling, priority etc., i think would be a great decision.
How about generating coding documentation generation.
Also there are some technologies about placing the certain processes closer to certain core etc., based on which area of the memory it is loaded (NUMA) to further refine and speed up the application speed. Might be a good candidate.
How about generating coding documentation generation.
Also there are some technologies about placing the certain processes closer to certain core etc., based on which area of the memory it is loaded (NUMA) to further refine and speed up the application speed. Might be a good candidate.
key takeaway after spending yrs on sw industry: big issue small because everyone jumps on it and fixes it. small issue is big since everyone ignores and it causes catastrophy later. #devilisinthedetails
-
- Member
- Posts: 1146
- Joined: Sat Mar 01, 2014 2:59 pm
Re: Artificial Intelligence project ideas related to OSDev
Depending on how you define it, that's not strictly AI. In terms of AI, I was thinking of things involving learning algorithms, neural networks, evaluation of past behaviour, and so on; what you're describing possibly falls more into the category of a highly-optimised algorithm.ggodw000 wrote:Also there are some technologies about placing the certain processes closer to certain core etc., based on which area of the memory it is loaded (NUMA) to further refine and speed up the application speed. Might be a good candidate.
When you start writing an OS you do the minimum possible to get the x86 processor in a usable state, then you try to get as far away from it as possible.
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
-
- Member
- Posts: 96
- Joined: Sat Mar 15, 2014 3:49 pm
Re: Artificial Intelligence project ideas related to OSDev
NN may be applied to intrusion detection. An NN may be able to learn the expected behaviour of a system (from its network interaction, or from an strace, or doubtless other inputs) and flag suspicious activity.
A nice roundup: http://security.stackexchange.com/quest ... -detection
A nice roundup: http://security.stackexchange.com/quest ... -detection
-
- Member
- Posts: 1146
- Joined: Sat Mar 01, 2014 2:59 pm
Re: Artificial Intelligence project ideas related to OSDev
That indeed sounds very interesting, but it doesn't happen at the OS level (nor do I think it should, unless you've got a *very* monolithic kernel).willedwards wrote:NN may be applied to intrusion detection. An NN may be able to learn the expected behaviour of a system (from its network interaction, or from an strace, or doubtless other inputs) and flag suspicious activity.
A nice roundup: http://security.stackexchange.com/quest ... -detection
When you start writing an OS you do the minimum possible to get the x86 processor in a usable state, then you try to get as far away from it as possible.
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
Re: Artificial Intelligence project ideas related to OSDev
It depends on AI's complexity, but I doubt that you can call it AI when it comes to internal OS processes. Anyway, the subject is pretty vague.
-
- Member
- Posts: 396
- Joined: Wed Nov 18, 2015 3:04 pm
- Location: San Jose San Francisco Bay Area
- Contact:
Re: Artificial Intelligence project ideas related to OSDev
With AI hitting so much hype and news, feel like studying at least a bit just for the fun of it. For system level developers, AI seems completely different area, but I am looking to find some justification.
Perhaps studying AI can give more insight on how the system level design/architecture can be tailor/optimize for AI.
Perhaps studying AI can give more insight on how the system level design/architecture can be tailor/optimize for AI.
key takeaway after spending yrs on sw industry: big issue small because everyone jumps on it and fixes it. small issue is big since everyone ignores and it causes catastrophy later. #devilisinthedetails