Artificial Intelligence project ideas related to OSDev

All off topic discussions go here. Everything from the funny thing your cat did to your favorite tv shows. Non-programming computer questions are ok too.
Post Reply
User avatar
iocoder
Member
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

Post by iocoder »

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.
embryo2
Member
Member
Posts: 397
Joined: Wed Jun 03, 2015 5:03 am

Re: Artificial Intelligence project ideas related to OSDev

Post by embryo2 »

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 :)
User avatar
Muazzam
Member
Member
Posts: 543
Joined: Mon Jun 16, 2014 5:59 am
Location: Shahpur, Layyah, Pakistan

Re: Artificial Intelligence project ideas related to OSDev

Post by Muazzam »

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.
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?
onlyonemac
Member
Member
Posts: 1146
Joined: Sat Mar 01, 2014 2:59 pm

Re: Artificial Intelligence project ideas related to OSDev

Post by onlyonemac »

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
Don
Posts: 11
Joined: Wed Apr 27, 2016 12:52 pm

Re: Artificial Intelligence project ideas related to OSDev

Post by Don »

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.
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).

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
ggodw000
Member
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

Post by ggodw000 »

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.
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
onlyonemac
Member
Member
Posts: 1146
Joined: Sat Mar 01, 2014 2:59 pm

Re: Artificial Intelligence project ideas related to OSDev

Post by onlyonemac »

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.
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.
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
willedwards
Member
Member
Posts: 96
Joined: Sat Mar 15, 2014 3:49 pm

Re: Artificial Intelligence project ideas related to OSDev

Post by willedwards »

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
onlyonemac
Member
Member
Posts: 1146
Joined: Sat Mar 01, 2014 2:59 pm

Re: Artificial Intelligence project ideas related to OSDev

Post by onlyonemac »

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
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).
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
SWGDev
Member
Member
Posts: 31
Joined: Wed Feb 10, 2016 3:29 am
Location: London, UK
Contact:

Re: Artificial Intelligence project ideas related to OSDev

Post by SWGDev »

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.
ggodw000
Member
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

Post by ggodw000 »

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.
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
Post Reply