Visopsys is an alternative operating system for PC compatible computers. This is a maintenance release, with numerous small improvements and bugfixes including some general back- porting from the 0.6 development branch. In addition, IDE disk-to-disk operations have been improved so that they can happen in parallel, the kernel hardware drivers have been given a new interrupt handing interface, and there is some improved efficiency in a performance-critical section of the multitasker.
The support of OSNews is always appreciated. There aren’t too many other sites where a poor little OS developer can get this kind of great exposure.
…back to work on 0.6…
Cheers,
Andy
Wow, looks great. Can’t wait to try it out.
good work andy
am I the only one who went “ouch!” when he/she saw those icons?
Otherwise I have no qualms with the looks.
Very nice Andy…
Keep up the good work!
Greetings from Italy
I am always amazed at how a few people in this world can achieve so much by themselves or in such small groups even if they can’t quite make it all the way to a useable product.
I’d salute Andy above, Rudi, Axel of Haiku, the SkyOS fella and plenty more if my memory still worked.
This puts the whole MS machine to shame, they must have 1000s of developers and must be into the billions of lines of code count by now but what do they have to show for it, an OS that drives me nuts yet I have no realistic choice to switch to anything else. I go where the best apps are even if the OS is far less than it could Be. If only apps could be truly OS portable but such is life.
There has to be a proper size for a basic but good looking OS, much bigger than the Floppy install but much much less than the Giga byte monsters we have now.
I think of an OS as a collection of parts, some of which have been built into this OS, but MS defines literally thousands of other components I have no real desire for yet the apps I run seem to need them.
Andy, please don’t fall into the infinity pit and implement everything MS/Linux/Apple did already 10yrs ago. Think about appliance computing, switch it on, boot in a few secs, it just works (unless abused). I guess a browser & networking stack is far more important than multiuser but its your show!
Oh well, keep on coding Andy
By that I mean what sort of API interface do your programs use to draw windows, buttons and other widgets? Is it a event driven interface? Does it use any object oriented methods?
you have a c API interface. Event driven, no obvious use of object orientation.
But most of your windowing routines are in your kernel, i.e. there is no separate window library.
Lets say I want to make a simple drawing program.
First I create a new window and canvas in it.
Then I need to see if the mouse is clicked,
then I need to see where the mouse was clicked,
then I need to be able to draw on my canvas at that point.
How hard would it be to write such a program? What function calls would need to be made?
I’m thinking of more complicated programs actually such as solitaire. Which require a click drag and redraw, similar to when a window is moved. But the card always stays inside the windows drawable area. How would one write such a program in your OS.
Hehe … gonna give it a test as soon as I can muster the time. From the sound of the description it seems to be a pretty, nifty and cool release with quite some bug fixes.
Btw: it’s me, the evil genius discovering the most weird bugs. *rofl*
@richard James: I’d have a canvas and draw custom controls to it, f. ex. the cards. Upon moving such a sprite:
on drag-begin, copy it to a buffer, redraw the rest offscreen and that’s it. On actual move, just restore the background, draw the card to the new location and expose the stuff to video memory. On drag-end, perform some testing, if the move is valid, draw the card and set the stte to “drag-begin”. Doing this would need an event handler for the canvas and some linked lists of objects kept in memory.
The object orientation you are looking for in c is done by function pointers, structures and the specialized functions for event(), draw(), new(), destroy() which each control/widget implements in its own way.
@mario: oooch, they are looking cool. Actually, I like them.
These languages have libraries that cause buffer overflows; the main reason for security holes.
Why not try a new language that has garbage collection like D.
http://www.digitalmars.com/d/garbage.html.
I know this would freak out people but an OS made of java would be very secure.
How about ADA language. I know there is an ada os but there doesn’t seem alot of action on it.
> These languages have libraries that cause buffer overflows;
> the main reason for security holes.
>
> Why not try a new language that has garbage collection like
> D.
While I think a new language for OSes is the key, the BO problems could also be eliminated by usign another standard libary (without those crap functions).
> I know this would freak out people but an OS made of java
> would be very secure.
http://www.jnode.org
Still I think Java has too many problems (#1 being that it still has a concept of processes by using “static variables”), but it’s a great leap foward compared to C.