Graphical Representation of your OS' structure
Graphical Representation of your OS' structure
I was wondering if anybody knows of a good program that you can use in order to generate graphical representations of your OS' structure. Like how your OS handles mouse/keyboard IRQs. I personally am not good in graphics and can hardly draw anything with graphical software so I'd appreciate it if you could recommend software that are easy to use.
On the field with sword and shield amidst the din of dying of men's wails. War is waged and the battle will rage until only the righteous prevails.
Did you tried UML.A nice UML program for windows is Visual Paradigm.It has a comunity license which allow you to use it for free.There are some versions of Visual paradigm for UNIX,LINUX,MAC...For the open source community there is Umbrello which is free to use.
Last edited by muisei on Thu Mar 22, 2007 5:49 am, edited 2 times in total.
I recommend pen & paper... you can then consider polishing that stuff in some diagramming program (the program is much less relevant when you already know what you want) though in most cases it's wasted effort because...
The point of pen & paper is that it's by far the fastest way to draw diagrams, unless you specifically need them to look professional (in which case it's going to take a lot of time whatever tool you use) so when you realize what you just draw is total crap you can just take the next paper and draw a better version. And when said diagram should reflect some software, your diagram is going to be either badly outdated or total crap a lot of time.
edit: ofcourse if you really NEED to greate professional looking graphics, I suggest you get a nice clip-art library first, because if the clip-art is nice enough nobody's going to realize your diagram doesn't make any sense, and you can just put some general boxes and arrows and any old program like Pain^W^W except Paint will do just fine.
The point of pen & paper is that it's by far the fastest way to draw diagrams, unless you specifically need them to look professional (in which case it's going to take a lot of time whatever tool you use) so when you realize what you just draw is total crap you can just take the next paper and draw a better version. And when said diagram should reflect some software, your diagram is going to be either badly outdated or total crap a lot of time.
edit: ofcourse if you really NEED to greate professional looking graphics, I suggest you get a nice clip-art library first, because if the clip-art is nice enough nobody's going to realize your diagram doesn't make any sense, and you can just put some general boxes and arrows and any old program like Pain^W^W except Paint will do just fine.
The real problem with goto is not with the control transfer, but with environments. Properly tail-recursive closures get both right.
Well I actually have a whiteboard, which is nice if I need to demonstrate something to someone else, but I find the paper still beats it for most purposes, since I don't need to walk to the board to draw..
The real problem with goto is not with the control transfer, but with environments. Properly tail-recursive closures get both right.
Well thank you everyone for your suggestions and ideas. About pen and paper and whiteboards, I do use those, well maybe not whiteboards but I certainly use papers all the time but what I need is a software that generates good looking images like GIMP or some other software that allows you to easily drag and drop some graphics on the screen so you can add text to them and etc.
The reason I need this is because after some time the design of the OS gets complicated even for the programmer so it is not bad to have some graphical representations of the functionality of your OS so when for example 2 years from now you look at the pictures, you will be able to remember what you have done.
About UML, it doesn't necessarily have to be a diagram you know. Just something pleasant to the eye so when you look at it you remember how you have designed a specific routine or handles a specific task in your OS.
The reason I need this is because after some time the design of the OS gets complicated even for the programmer so it is not bad to have some graphical representations of the functionality of your OS so when for example 2 years from now you look at the pictures, you will be able to remember what you have done.
About UML, it doesn't necessarily have to be a diagram you know. Just something pleasant to the eye so when you look at it you remember how you have designed a specific routine or handles a specific task in your OS.
On the field with sword and shield amidst the din of dying of men's wails. War is waged and the battle will rage until only the righteous prevails.
DIA on Linux? I've used it and the output was awful. Maybe it is just me but I could draw better shapes with paint. The reason I used it was because it had predefined shapes for UML and it could speed up my work otherwise, I would have preferred paint over DIA.
On the field with sword and shield amidst the din of dying of men's wails. War is waged and the battle will rage until only the righteous prevails.
My experience with Dia is that what it draws in the window looks awful, but when you render it out into a file it looks ok. I think I've used it mostly on Windows though.
The real problem with goto is not with the control transfer, but with environments. Properly tail-recursive closures get both right.
Okay I found a software that does what I needed. It is called "Real Draw" and is pretty neat. I have attached a screenshot of the program's GUI. It's setup size is ~10 MBs so it's pretty small.
- Attachments
-
- Real Draw PRO's screen shot. Has nice premaid textures and libraries.
- RealDraw.PNG (116.62 KiB) Viewed 2469 times
On the field with sword and shield amidst the din of dying of men's wails. War is waged and the battle will rage until only the righteous prevails.