I would like to create an entire new operating system.

Right off the back, I know this sounds crazy.

I know this will take years to complete but I have time and I really would like to at least get something going. It better to at least try. I always say I'm gonna do this or that, but I never end up doing it.

So, where to start? Well, I hear you need Assembly to have it actually interact with memory and all of that. So should I go out and learn that? I have heard that C is good to use to actually design the OS, but is that the best or should I look into something else? I have a little experience with C but I lost it over time so I'll have to refresh on it. Didn't get too far into it.

I have heard of people saying to use stuff such as Linux that already have the drivers and such in it, but I don't want my OS to be like Linux. I want it to be completely new and different.

This will be a slow process, but I want to take it step by step and try to actually achieve something. I believe if I actually put work into it, I can accomplish this.

Any kind of help would be great.