Bespoke solution - do you want to team up? - Large idea,
Posted: Thu Jun 20, 2013 6:25 pm
Hi guys.
I have come across an idea which I have tested using Visual Studio 2012 in C++.
It works ok-ish, but as it is running on top of windows I have no control over some of the key aspects that I wish to control.
Currently it is running about 470 times faster than windows software, but as above I am tied into the OS. (Linux is the same, it has to be it is an OS)
This is a great performance increase, but when certain conditions happen it slows down for a few minutes, or even stops all programs for a few minutes.
This is not due to my programming but due to the OS
I have talked with a few large companies within my country and a few international companies who are very interested.
I can supply them the C++ version, but I want to provide them with an amazing system, not tied to any OS.
Also, the C++ version, Windows or Linux, etc., will be slower and will require additional PC's and personnel.
I have designed test hardware which is working well.
I have teamed up with a large telecommunications provider.
I am not after an OS, this would defeat the purpose. No hardware abstraction layers wanted.
I am after a bespoke solution.
I know what I want, but my limited knowledge of chip programming is slowing me down.
I know assembly, but setting the chip(s) up and cards is unknown to me.
I want to know if people are interested in assisting with the project.
At this point in time I cannot pay for peoples time.
I have sold one of my companies and about to sell my Silverlight software development framework I designed a few years back.
I have investors that are paying for my time and additional equipment.
I am a contract programmer.
I am not taking on any more contract projects.
I am about to start working fulltime on this project.
A few very large companies have invested millions upon millions in this idea, but they have all used existing technologies built upon existing OS's
They have also approached the project from the wrong perspective.
As such they have put the project into the too-hard-basket.
Due to my limited knowledge in chip programming (setting it/them up) I thought I could quickly learn it.
But I have found that I am spending many hours researching, writing code and testing the results.
I currently have the code written in assembly using Visual Studio 2012 as the IDE.
I have setup F5 to run batch commands, that will build and run it under qemu.
This works nice, I love the macros in nasm.
Basically the system needs (no hardware abstraction layers, just raw bytes):
+ Hard disk access
+ Ethernet control
+ Keyboard
+ Text screen, graphics is fine, it is only to display simple messages.
I have a memory manager that will be used.
I have the hard disk read/write program to use.
When Ethernet interrupt is received we will parse the raw bytes partially in the interrupt and if required for further processing then in another thread.
Each thread will run one program, so no scheduler etc. is required.
The entire system will be designed for one task.
-------------------------------------------------------------------------------------------------------------------------
There will be another bespoke system that needs to be designed.
This system is a bespoke database.
Same as above system but different code.
I have written both systems in C++ up to the point where I am happy that I know what I want and where to head from there.
If I continue with the C++ versions it will not give me the satisfaction that I will get from the asm version.
And also the $$.
Both projects are not large, I think it would take more time to write a basic OS.
I will stop tying here, I was planning to go a little deeper.
-------------------------------------------------------------------------------------------------------------------------
So what am I after??
I would like the system to load the interrupts, gdt, etc.
Map 32 GB
Start all processors (I am testing on a single AMD-8320 8 core)
Start all cores at address xxxx
Set up all Ethernet cards, (I am testing with just one)
Set up all hard disks, (I am testing with just one)
I would also like the source code and if possible written in assembly nasm.
I can provide the nasm files etc to run under Windows Visual Studio 2012
-------------------------------------------------------------------------------------------------------------------------
Any and all feedback is welcome.
Kind Regards, Alistair
I have come across an idea which I have tested using Visual Studio 2012 in C++.
It works ok-ish, but as it is running on top of windows I have no control over some of the key aspects that I wish to control.
Currently it is running about 470 times faster than windows software, but as above I am tied into the OS. (Linux is the same, it has to be it is an OS)
This is a great performance increase, but when certain conditions happen it slows down for a few minutes, or even stops all programs for a few minutes.
This is not due to my programming but due to the OS
I have talked with a few large companies within my country and a few international companies who are very interested.
I can supply them the C++ version, but I want to provide them with an amazing system, not tied to any OS.
Also, the C++ version, Windows or Linux, etc., will be slower and will require additional PC's and personnel.
I have designed test hardware which is working well.
I have teamed up with a large telecommunications provider.
I am not after an OS, this would defeat the purpose. No hardware abstraction layers wanted.
I am after a bespoke solution.
I know what I want, but my limited knowledge of chip programming is slowing me down.
I know assembly, but setting the chip(s) up and cards is unknown to me.
I want to know if people are interested in assisting with the project.
At this point in time I cannot pay for peoples time.
I have sold one of my companies and about to sell my Silverlight software development framework I designed a few years back.
I have investors that are paying for my time and additional equipment.
I am a contract programmer.
I am not taking on any more contract projects.
I am about to start working fulltime on this project.
A few very large companies have invested millions upon millions in this idea, but they have all used existing technologies built upon existing OS's
They have also approached the project from the wrong perspective.
As such they have put the project into the too-hard-basket.
Due to my limited knowledge in chip programming (setting it/them up) I thought I could quickly learn it.
But I have found that I am spending many hours researching, writing code and testing the results.
I currently have the code written in assembly using Visual Studio 2012 as the IDE.
I have setup F5 to run batch commands, that will build and run it under qemu.
This works nice, I love the macros in nasm.
Basically the system needs (no hardware abstraction layers, just raw bytes):
+ Hard disk access
+ Ethernet control
+ Keyboard
+ Text screen, graphics is fine, it is only to display simple messages.
I have a memory manager that will be used.
I have the hard disk read/write program to use.
When Ethernet interrupt is received we will parse the raw bytes partially in the interrupt and if required for further processing then in another thread.
Each thread will run one program, so no scheduler etc. is required.
The entire system will be designed for one task.
-------------------------------------------------------------------------------------------------------------------------
There will be another bespoke system that needs to be designed.
This system is a bespoke database.
Same as above system but different code.
I have written both systems in C++ up to the point where I am happy that I know what I want and where to head from there.
If I continue with the C++ versions it will not give me the satisfaction that I will get from the asm version.
And also the $$.
Both projects are not large, I think it would take more time to write a basic OS.
I will stop tying here, I was planning to go a little deeper.
-------------------------------------------------------------------------------------------------------------------------
So what am I after??
I would like the system to load the interrupts, gdt, etc.
Map 32 GB
Start all processors (I am testing on a single AMD-8320 8 core)
Start all cores at address xxxx
Set up all Ethernet cards, (I am testing with just one)
Set up all hard disks, (I am testing with just one)
I would also like the source code and if possible written in assembly nasm.
I can provide the nasm files etc to run under Windows Visual Studio 2012
-------------------------------------------------------------------------------------------------------------------------
Any and all feedback is welcome.
Kind Regards, Alistair