windows version
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 67
Program Version Switch 1.03
Program Version Switch is a program to easily switch between different interpreter versions. more>>
pvswitch is a very tiny program which makes it possible to use different program installations on one machine flawlessly.
Its flexibility is intended for people who need to run programs against different interpreter versions.
But it can also be used for different purposes like switching the version of a compiler, text editor, mail reader, browser, whatever.
It is most useful for developers of interpreter based programs which are started via a hash-bang line (#!).
The following example explains the usage for perl programs, but the very same is true for all other interpreter languages.
If you install two or more different perl versions on your machine, you could just call the respective perl binary you want to use..
perl myscript.pl
/path/to/another/perl myscript.pl
This works fine, although it isnt very convenient. However if you are starting your program using the hash-bang line like
#! /usr/bin/perl
and then just start it by
./myscript.pl
you would need to change the file itself to use another perl version. Again it is possible, but not very convenient.
And here comes pvswitch: its purpose is to make such situations convenient. Further it solve some problems which come up if multiple people want to use different perl versions. pvswitch allows even to run one program in two shells with different perl versions.
This is possible because pvswitch uses a environment variable to select the interpreter version to use. This environment variable can be set in different sessions independently.
pvswitch is installed as new program binary (e.g. perl) the old one will be renamed to program.pvswitch.
Now every time you execute a this program (e.g. perl), pvswitch is executed. It doesnt matter how you start the program...
perl myscript.pl
./myscript.pl # if it has a hash-bang #! /usr/bin/perl
for both cases the pvswitch binary will be executed, pvswitch will than check for the environment variable PVSWITCH_PERL_BINARY (if you are running perl), if it is found it tries to find this key in the configuration file pvswitch.conf and execute the program which is configured for the version configured set in the environment variable (e.g. perl.pvswitch).
So it just executes the real program (e.g. perl interpreter). Depending on the environment a different version might be selected.
There are some convenient tools (e.g. perlver, pvconfig) to configure this.
Enhancements:
- Fixed a bug which could cause segmentation violation.
<<lessIts flexibility is intended for people who need to run programs against different interpreter versions.
But it can also be used for different purposes like switching the version of a compiler, text editor, mail reader, browser, whatever.
It is most useful for developers of interpreter based programs which are started via a hash-bang line (#!).
The following example explains the usage for perl programs, but the very same is true for all other interpreter languages.
If you install two or more different perl versions on your machine, you could just call the respective perl binary you want to use..
perl myscript.pl
/path/to/another/perl myscript.pl
This works fine, although it isnt very convenient. However if you are starting your program using the hash-bang line like
#! /usr/bin/perl
and then just start it by
./myscript.pl
you would need to change the file itself to use another perl version. Again it is possible, but not very convenient.
And here comes pvswitch: its purpose is to make such situations convenient. Further it solve some problems which come up if multiple people want to use different perl versions. pvswitch allows even to run one program in two shells with different perl versions.
This is possible because pvswitch uses a environment variable to select the interpreter version to use. This environment variable can be set in different sessions independently.
pvswitch is installed as new program binary (e.g. perl) the old one will be renamed to program.pvswitch.
Now every time you execute a this program (e.g. perl), pvswitch is executed. It doesnt matter how you start the program...
perl myscript.pl
./myscript.pl # if it has a hash-bang #! /usr/bin/perl
for both cases the pvswitch binary will be executed, pvswitch will than check for the environment variable PVSWITCH_PERL_BINARY (if you are running perl), if it is found it tries to find this key in the configuration file pvswitch.conf and execute the program which is configured for the version configured set in the environment variable (e.g. perl.pvswitch).
So it just executes the real program (e.g. perl interpreter). Depending on the environment a different version might be selected.
There are some convenient tools (e.g. perlver, pvconfig) to configure this.
Enhancements:
- Fixed a bug which could cause segmentation violation.
Download (0.075MB)
Added: 2005-04-15 License: GPL (GNU General Public License) Price:
1661 downloads
LANChat 1.1.0
LANChat Pro is a local area network chat program. more>>
LANChat is a new version of LANChat for Linux has been released. It solves the problem of hanging up the Windows version while starting. The Windows update will be released in the near future.
Main features:
- Logging - log all received messages (except MSG - private messages) to the files created in lanchat/logs directory. LANChat logs directory should be writable for user that is using LANChat!
- timed outs - You can see timed out message like "John timed out." when the Johns computer hanged (windows:)
Enhancements:
- now based on threads (not processes)
- command history
- windows scaling (up/down pgup/pgdown)
- words in line handling
- TAB - auto-filling commands and users names
- proper nick setting function
- more detailed statistics
- file logging on/off
- some minor bugs fixed, lanchatrc configuration file added compatible with Windows LANChat
<<lessMain features:
- Logging - log all received messages (except MSG - private messages) to the files created in lanchat/logs directory. LANChat logs directory should be writable for user that is using LANChat!
- timed outs - You can see timed out message like "John timed out." when the Johns computer hanged (windows:)
Enhancements:
- now based on threads (not processes)
- command history
- windows scaling (up/down pgup/pgdown)
- words in line handling
- TAB - auto-filling commands and users names
- proper nick setting function
- more detailed statistics
- file logging on/off
- some minor bugs fixed, lanchatrc configuration file added compatible with Windows LANChat
Download (0.026MB)
Added: 2005-09-16 License: GPL (GNU General Public License) Price:
1658 downloads
POLE 0.2
POLE is a library to access structured storage. more>>
POLE is a portable C++ library to access structured storage. It is designed to be compatible with Microsoft structured storage, also sometimes known as OLE Compound Document.
A structured storage is normally used to store files inside another file; you can even have complex directory tree inside. It can be treated as a filesystem inside a file.
The most popular use of structured storage is in Microsoft Office. Structured storage does not offer compression nor encryption support, hence usually it is used only for interoperability purposes.
Compared to structured storage routines offered by Microsoft Windows API, POLE has the advantage that it is portable. You can access any structured storage in the supported platform, you dont need to rely on Windows library.
Using
To compile POLE, you need a C++ compiler, with standard C++ library which supports STL (Standard Template Library).
POLE is just a library, you have to integrate it as part of your application/project. Since it consists of one source file and one header file, it does not make much sense to compile POLE as separate library (either static or dynamic). Simply add these files to your project and you are done.
The source tarball of POLE demonstrates the use of POLE to build poledump, a small utility to extract any stream inside a structured storage. If you use g++ as the compiler, you can compile poledump using the following command:
g++ -o poledump pole.cpp poledump.cpp
You may use poledump like the example below:
poledump budget.xls Workbook result.xls
The above command will extract a stream named Workbook inside Excel document (budget.xls) and save it as result.xls. File result.xls will still be recognized as a valid workbook (in raw format). Launch Microsoft Excel, open this file, and convince yourself.
Since version 0.2, the source tarball also includes a graphical tool named POLEView. Its purpose is to show the content of a structured storage in a tree view. It is also possible to view each stream in hexadecimal format and/or export the stream as well. You can study its source code to get familiar on how to use POLE API.
To compile POLEView, you need Qt (from Trolltech) version 3.x. Most Linux distributions normally already package the latest version of Qt, so it is likely that you need to worry about this. The Windows version is still planned, awaiting for the release of Qt version 4.
The build command for poleview is:
qmake && make
<<lessA structured storage is normally used to store files inside another file; you can even have complex directory tree inside. It can be treated as a filesystem inside a file.
The most popular use of structured storage is in Microsoft Office. Structured storage does not offer compression nor encryption support, hence usually it is used only for interoperability purposes.
Compared to structured storage routines offered by Microsoft Windows API, POLE has the advantage that it is portable. You can access any structured storage in the supported platform, you dont need to rely on Windows library.
Using
To compile POLE, you need a C++ compiler, with standard C++ library which supports STL (Standard Template Library).
POLE is just a library, you have to integrate it as part of your application/project. Since it consists of one source file and one header file, it does not make much sense to compile POLE as separate library (either static or dynamic). Simply add these files to your project and you are done.
The source tarball of POLE demonstrates the use of POLE to build poledump, a small utility to extract any stream inside a structured storage. If you use g++ as the compiler, you can compile poledump using the following command:
g++ -o poledump pole.cpp poledump.cpp
You may use poledump like the example below:
poledump budget.xls Workbook result.xls
The above command will extract a stream named Workbook inside Excel document (budget.xls) and save it as result.xls. File result.xls will still be recognized as a valid workbook (in raw format). Launch Microsoft Excel, open this file, and convince yourself.
Since version 0.2, the source tarball also includes a graphical tool named POLEView. Its purpose is to show the content of a structured storage in a tree view. It is also possible to view each stream in hexadecimal format and/or export the stream as well. You can study its source code to get familiar on how to use POLE API.
To compile POLEView, you need Qt (from Trolltech) version 3.x. Most Linux distributions normally already package the latest version of Qt, so it is likely that you need to worry about this. The Windows version is still planned, awaiting for the release of Qt version 4.
The build command for poleview is:
qmake && make
Download (0.016MB)
Added: 2005-04-13 License: BSD License Price:
1655 downloads
Blassic 0.10.0
Blassic is a classic 80 Basic interpreter, with line numbers & POKE. more>>
Blassic is a classic Basic interpreter. The line numbers are mandatory, and it has PEEK & POKE. The main goal is to execute programs written in old interpreters, even those that use peculiar control flow constructs or automodifiable code.
However, it can be used as a scripting language, and has some not-so-classic instructions. It has graphics modes that are compatible with some classic systems and user defined.
Enhancements:
- There are problems using some versions of gcc on some platforms. In case Blassic core dumps on exiting or when a program has an error, compile it using -O0
- The regular expression functions are not supported under windows.
- The bidirectional POPEN may or may not work on windows depending on the windows version used.
- Now configure admits several options: --disable-graphics to compile without graphics support and --disable-curses to compile without curses nor ncurses. In the last case, CLS, LOCATE and other instructions when used in text mode are silently ignored. In the
- former, trying to enter in graphics mode generates an error. If curses is enabled, first ncurses is tested, if not available curses is used instead. The --disable-ncurses option skips the ncurses test and uses always curses.
- When configuring for unix/linux, using --without-x has the same effect as --disable-graphics. For windows is ignored.
- Several scripts to call configure are provided, see the do_conf* files.
<<lessHowever, it can be used as a scripting language, and has some not-so-classic instructions. It has graphics modes that are compatible with some classic systems and user defined.
Enhancements:
- There are problems using some versions of gcc on some platforms. In case Blassic core dumps on exiting or when a program has an error, compile it using -O0
- The regular expression functions are not supported under windows.
- The bidirectional POPEN may or may not work on windows depending on the windows version used.
- Now configure admits several options: --disable-graphics to compile without graphics support and --disable-curses to compile without curses nor ncurses. In the last case, CLS, LOCATE and other instructions when used in text mode are silently ignored. In the
- former, trying to enter in graphics mode generates an error. If curses is enabled, first ncurses is tested, if not available curses is used instead. The --disable-ncurses option skips the ncurses test and uses always curses.
- When configuring for unix/linux, using --without-x has the same effect as --disable-graphics. For windows is ignored.
- Several scripts to call configure are provided, see the do_conf* files.
Download (0.34MB)
Added: 2005-04-15 License: GPL (GNU General Public License) Price:
1654 downloads
QCADesigner 2.0.3
QCADesigner is a CAD-like tool for the design and simulation of circuits based on Quantum Cellular Automata. more>>
QCADesigner is the product of an ongoing research effort at the University of Calgary ATIPS Laboratory to create a design and simulation tool for Quantum Dot Cellular Automata (QCA). This tool is still under development and is provided free of cost to the research community "as is".
QCA is an emerging nanotechnology concept for the realization of a computer built with arrays of nano-scale QCA cells. These QCA cells are capable of performing all complex computational functions required for general-purpose computation.
QCA has been listed as one of the six emerging nanotechnologies with applications in future computers by the International Technology Roadmap For Semiconductors (ITRS). QCADesigner facilitates rapid design, layout and simulation of QCA circuits by providing powerful CAD features available in more complex circuit design tools.
Main features:
- Intuitive CAD-like user interface
- Easy drag-and-drop circuit design
- Encapsulated PostScript (EPS) printing
- Support for multiple layers (for signal crossover)
- Multilingual support (de hu ro fr - so far)
Enhancements:
- This is a minor bugfix release featuring an improved layer mapping dialog.
- However, the most important change is on the Windows front: The Windows version of QCADesigner now uses the Gaim version of the GTK+ Runtime Environment.
- The new version allows you to upgrade from the dropline.net version of GTK+.
<<lessQCA is an emerging nanotechnology concept for the realization of a computer built with arrays of nano-scale QCA cells. These QCA cells are capable of performing all complex computational functions required for general-purpose computation.
QCA has been listed as one of the six emerging nanotechnologies with applications in future computers by the International Technology Roadmap For Semiconductors (ITRS). QCADesigner facilitates rapid design, layout and simulation of QCA circuits by providing powerful CAD features available in more complex circuit design tools.
Main features:
- Intuitive CAD-like user interface
- Easy drag-and-drop circuit design
- Encapsulated PostScript (EPS) printing
- Support for multiple layers (for signal crossover)
- Multilingual support (de hu ro fr - so far)
Enhancements:
- This is a minor bugfix release featuring an improved layer mapping dialog.
- However, the most important change is on the Windows front: The Windows version of QCADesigner now uses the Gaim version of the GTK+ Runtime Environment.
- The new version allows you to upgrade from the dropline.net version of GTK+.
Download (2.5MB)
Added: 2005-08-04 License: GPL (GNU General Public License) Price:
1547 downloads
Podgrid 0.5.1
Podgrid is your personal internet radio news receiver. more>>
Podgrid is a personal Internet radio news receiver for your living room.
It can download your favorite podcasts automatically to your entertainment PC and mix them into the music you are listening to. Podgrid comprises a plugin for XMMS.
Currently, XMMS on Linux is the only supported player. A Winamp/Windows version is in the works.
<<lessIt can download your favorite podcasts automatically to your entertainment PC and mix them into the music you are listening to. Podgrid comprises a plugin for XMMS.
Currently, XMMS on Linux is the only supported player. A Winamp/Windows version is in the works.
Download (0.37MB)
Added: 2005-09-02 License: GPL (GNU General Public License) Price:
1512 downloads
Rekall 2.2.6
Rekall is the database front-end for KDE and the Web. more>>
Rekall is a database front-end, somewhat in the style of MicroSoft Access. However, Rekall is not itself a database, and does not include a database.
By this we mean that data is stored somewhere else in an SQL server, and Rekall is fundementaly just a tool to extract, display and update that data (of course, it does lots more than that, it does forms and reports and scripting and .... you get the idea).
It is database agnostic, and does not have any preferred database in the sense that Access(tm) uses the Jet. database engine (although the Windows version can use the Jet database engine via an ODBC driver).
Rekall can do lots of the things that you would expect of a database front-end (or if it cant, let us know!). You can design and use forms and reports, you can construct database queries, and you can import and export data (actually, you can copy data, import is just copy file to table, and export is just copy table to file). You can also create reusable components which you can use in forms and reports, to reduce application development time.
Rekall can be scripted using the the Python language. You can arrange that a script is executed when various events occur (for instance, when the user changes the value of a control).
Scripts can be associated directly with the event, but you can also store scripts in script modules for more general use. And, of course, you have full access to all the modules that are available for Python. Plus, Rekall has an integrated Python debugger with syntax highlighting.
RekallRevealed is run as a community website to support the GPL version of Rekall. Rekall is being included by some of the Linux distributions, and commercial components and support are available from TotalRekall and from theKompany.
Enhancements:
Dynamic Layouts
- Dynamic layouts allow you to create forms where controls automatically resize depending on settings such as font sizes, and as the user resizes the form. This is based on QTs layout engine, althougn only a restricted set of functions are available.
Tool Boxes
- Personally, the author is not a fan of tool boxes, but they seem to be popular, so Rekall now supports them. If you still prefer the old context menu mechanism, you can turn tool boxes off.
Wizards
- Lots of the controls now have control wizards which prompt you for the important settings. Hopefully wizards will be avaialble for all controls by the time 2.3.x becomes 2.4.0
Stock Databases
- Stock databases. Rekall will come with some stock databases (actually there is only one at present, the demo database, but more will be added over time) which can be used to create your own database. In addition, you can download stock databases from the web. See the Rekall section on downloading the database that runs this website!
Manual
- The manual can now be accessed via a dedicated manual viewer (loosely modelled on QTs assistant program).
Other stuff
- Lots of bug fixes, lots of other smaller additions.
Enhancements:
- 2.2.6 is the now latest stable release.
- Mostly bug fixes since 2.2.4, particularly a problem related (I believe) to the default style used by Fedora Core 4
<<lessBy this we mean that data is stored somewhere else in an SQL server, and Rekall is fundementaly just a tool to extract, display and update that data (of course, it does lots more than that, it does forms and reports and scripting and .... you get the idea).
It is database agnostic, and does not have any preferred database in the sense that Access(tm) uses the Jet. database engine (although the Windows version can use the Jet database engine via an ODBC driver).
Rekall can do lots of the things that you would expect of a database front-end (or if it cant, let us know!). You can design and use forms and reports, you can construct database queries, and you can import and export data (actually, you can copy data, import is just copy file to table, and export is just copy table to file). You can also create reusable components which you can use in forms and reports, to reduce application development time.
Rekall can be scripted using the the Python language. You can arrange that a script is executed when various events occur (for instance, when the user changes the value of a control).
Scripts can be associated directly with the event, but you can also store scripts in script modules for more general use. And, of course, you have full access to all the modules that are available for Python. Plus, Rekall has an integrated Python debugger with syntax highlighting.
RekallRevealed is run as a community website to support the GPL version of Rekall. Rekall is being included by some of the Linux distributions, and commercial components and support are available from TotalRekall and from theKompany.
Enhancements:
Dynamic Layouts
- Dynamic layouts allow you to create forms where controls automatically resize depending on settings such as font sizes, and as the user resizes the form. This is based on QTs layout engine, althougn only a restricted set of functions are available.
Tool Boxes
- Personally, the author is not a fan of tool boxes, but they seem to be popular, so Rekall now supports them. If you still prefer the old context menu mechanism, you can turn tool boxes off.
Wizards
- Lots of the controls now have control wizards which prompt you for the important settings. Hopefully wizards will be avaialble for all controls by the time 2.3.x becomes 2.4.0
Stock Databases
- Stock databases. Rekall will come with some stock databases (actually there is only one at present, the demo database, but more will be added over time) which can be used to create your own database. In addition, you can download stock databases from the web. See the Rekall section on downloading the database that runs this website!
Manual
- The manual can now be accessed via a dedicated manual viewer (loosely modelled on QTs assistant program).
Other stuff
- Lots of bug fixes, lots of other smaller additions.
Enhancements:
- 2.2.6 is the now latest stable release.
- Mostly bug fixes since 2.2.4, particularly a problem related (I believe) to the default style used by Fedora Core 4
Download (4.9MB)
Added: 2005-09-28 License: GPL (GNU General Public License) Price:
1497 downloads
Sanos 1.3.3
Sanos is a minimalistic 32-bit x86 OS kernel for network server appliances running on standard PC hardware. more>>
Sanos is a minimalistic 32-bit x86 OS kernel for Java based server appliances running on standard PC hardware.
This enables you to run java server applications without the need to install a traditional host operating system like Windows or Linux. Only a standard Java HotSpot VM and the sanos kernel are needed.
The kernel was developed as part of an experiment on investigating the feasibility of running java server applications without a traditional operating system only using a simple kernel.
The kernel implements basic operating system services like booting, memory management, thread scheduling, local and remote file systems, TCP/IP networking and DLL loading and linking.
A win32 layer allows the Windows version of the standard HotSpot JVM to run under sanos, essentially providing a JavaOS platform for server applications. This enables you to run java based server applications, like tomcat and jboss, under sanos.
Alternatively, you can use sanos as a small kernel for embedded server applications written in C. Sanos has a fairly standard POSIX based API and an ANSI Standard C library. In this case you dont need the JVM and the win32 wrappers.
Sanos is open source under a BSD style license. Please see the COPYING file for details.
Click on the topics below for further information, or send me an e-mail if you have any questions, comments or problems regarding sanos. Please include the word sanos in the mail to prevent it from being intercepted by my spam filter.
Sanos can be downloaded as either binary or source. All the files in the binary version can be built from the source version, so you do not need the binary version, if you are building sanos from source.
The binary version contains the compiled version of sanos, with files and utilities for making a boot disk.
The source version contains all the source code and build files for building sanos from source. You will need a Microsoft Visual C compiler to build sanos from source.
Enhancements:
- GetLogicalDrives() in kernel32 implemented.
- A bug in cmd_ipconfig() in sh.c prevented proper display of network configuration if no DNS servers was configured. This problem has been fixed. (FGA)
- New -a option added to mkdfs to support file lists with alternative files names. This simplifies configurations with both debug and release builds.
- The Visual Studio wizard can now generate a floppy disk boot image configured for the application.
- Shell prompt can be configured by setting the prompt property in the [shell] section of the os.ini file.
- If command line arguments are given to the shell it now executes the built-in command and exits the shell.
- The floppy motor timeout routine now acquires the floppy mutex before turning off the motor in order to prevent race conditions.
- Advanced Power Management (APM) support implemented. The computer can now be powered off after os shutdown. The mode parameter for exitos() can be used to specify the shutdown mode (halt, reboot, poweroff, debug). A shutdown command has been added to the shell. The power status can be retrieved using /proc/apm.
- Added /proc/cpu for CPU information.
- The raise() function now returns an error if the signal number is invalid.
- Breakpoint traps are now sent to the user mode signal handler. This allows breakpoints to be handled by user mode code.
- Signals now exits the currently executing job with the signal number as exit code. However, if the debug flag in the PEB is set the debugger is entered if an unhandled signal is encountered. The debug flag can be set using the debug command in the shell. The debug flag can be configured using the debug property in the [os] section of os.ini. The default value of the debug flag is 0, unless the system is build in debug configuration.
- readv() and writev() implemented in vfs.
- The kernel log is now implemented by the device driver /dev/klog. The kernel log now support ioctl for waiting for new log entries in the kernel log. The kprintf has been extended to support different log levels.
- The syslog interface has been redesigned in to comply with POSIX. The syslog now supports logging to a syslog server by setting the loghost property in the [os] section of os.ini.
- New klog daemon to read entries from the kernel log (/dev/klog) and add them to the system log.
- The sockaddr and sockaddr_in structures has been change to conform to winsock definitions.
- The sleep() function has been renamed to msleep(). A new POSIX conformant sleep function has been added to unistd.h.
- Added sys/time.h header file. Also added tzp parameter to gettimeofday() for POSIX compliance.
- New simple text editor utility (edit.exe) added.
- The syserror() function has been moved from libc.lib to the os.dll as an exported os api call.
- readline() now uses stdin and stdout for input and output.
- Bug in iomux fixed. Now a monitored event signals the iomux and not the associated object.
- Implemented popen() and pclose(). Also added a P_SUSPEND parameter to spawn() to allow new jobs to be started suspended.
- The kernel version information is now kept in a version resource in krnl.dll. The version information is retrieved using the new module version information functions in verinfo.c.
- The build type can now be controlled by compile time switches. The kernel version can be displayed in the Windows Explorer by viewing Properties for krnl.dll and selecting the Version tab.
- User management added to kernel. Each thread is now assigned to a user and a group. A thread has both a real and an effective user and group owner. The {get|set}[e]{uid|gid}() functions can be used to change the effective and real user and group for a thread. When a new thread is created the effective user and group are inherited from the creator thread.
- Added functions to query /etc/passwd and /etc/group files.
- New whoami, id, chmod, and chown commands added to shell. The format of the output from ls has been changed to display the file permission info.
- New file system version for DFS. The new version supports user and group owner for files and directories as well as permission bits. The new DFS version also supports files larger than 2GB. The fchown() and chown() functions has been added to vfs.
- DES-based crypt() implementation added.
- The spawn() function now computes the pgm parameter from the cmdline parameter if the pgm parameter is NULL. The initpgm and initargs properties in the [os] section of /etc/os.ini has been replaced with a single property named init. The default for init has been changed to /bin/sh.
- The behavour of the initial application has been changed. Previously the os shut down after the initial application exited. Now the initial application is executed again if it exits.
- Telnet daemon moved from the shell to separate server (telnetd.exe). The new telnet daemon has a more robust handling of the telnet protocol. The telnet daemon invokes the new login utlity in order to log on user.
- FTP daemon implemented.
<<lessThis enables you to run java server applications without the need to install a traditional host operating system like Windows or Linux. Only a standard Java HotSpot VM and the sanos kernel are needed.
The kernel was developed as part of an experiment on investigating the feasibility of running java server applications without a traditional operating system only using a simple kernel.
The kernel implements basic operating system services like booting, memory management, thread scheduling, local and remote file systems, TCP/IP networking and DLL loading and linking.
A win32 layer allows the Windows version of the standard HotSpot JVM to run under sanos, essentially providing a JavaOS platform for server applications. This enables you to run java based server applications, like tomcat and jboss, under sanos.
Alternatively, you can use sanos as a small kernel for embedded server applications written in C. Sanos has a fairly standard POSIX based API and an ANSI Standard C library. In this case you dont need the JVM and the win32 wrappers.
Sanos is open source under a BSD style license. Please see the COPYING file for details.
Click on the topics below for further information, or send me an e-mail if you have any questions, comments or problems regarding sanos. Please include the word sanos in the mail to prevent it from being intercepted by my spam filter.
Sanos can be downloaded as either binary or source. All the files in the binary version can be built from the source version, so you do not need the binary version, if you are building sanos from source.
The binary version contains the compiled version of sanos, with files and utilities for making a boot disk.
The source version contains all the source code and build files for building sanos from source. You will need a Microsoft Visual C compiler to build sanos from source.
Enhancements:
- GetLogicalDrives() in kernel32 implemented.
- A bug in cmd_ipconfig() in sh.c prevented proper display of network configuration if no DNS servers was configured. This problem has been fixed. (FGA)
- New -a option added to mkdfs to support file lists with alternative files names. This simplifies configurations with both debug and release builds.
- The Visual Studio wizard can now generate a floppy disk boot image configured for the application.
- Shell prompt can be configured by setting the prompt property in the [shell] section of the os.ini file.
- If command line arguments are given to the shell it now executes the built-in command and exits the shell.
- The floppy motor timeout routine now acquires the floppy mutex before turning off the motor in order to prevent race conditions.
- Advanced Power Management (APM) support implemented. The computer can now be powered off after os shutdown. The mode parameter for exitos() can be used to specify the shutdown mode (halt, reboot, poweroff, debug). A shutdown command has been added to the shell. The power status can be retrieved using /proc/apm.
- Added /proc/cpu for CPU information.
- The raise() function now returns an error if the signal number is invalid.
- Breakpoint traps are now sent to the user mode signal handler. This allows breakpoints to be handled by user mode code.
- Signals now exits the currently executing job with the signal number as exit code. However, if the debug flag in the PEB is set the debugger is entered if an unhandled signal is encountered. The debug flag can be set using the debug command in the shell. The debug flag can be configured using the debug property in the [os] section of os.ini. The default value of the debug flag is 0, unless the system is build in debug configuration.
- readv() and writev() implemented in vfs.
- The kernel log is now implemented by the device driver /dev/klog. The kernel log now support ioctl for waiting for new log entries in the kernel log. The kprintf has been extended to support different log levels.
- The syslog interface has been redesigned in to comply with POSIX. The syslog now supports logging to a syslog server by setting the loghost property in the [os] section of os.ini.
- New klog daemon to read entries from the kernel log (/dev/klog) and add them to the system log.
- The sockaddr and sockaddr_in structures has been change to conform to winsock definitions.
- The sleep() function has been renamed to msleep(). A new POSIX conformant sleep function has been added to unistd.h.
- Added sys/time.h header file. Also added tzp parameter to gettimeofday() for POSIX compliance.
- New simple text editor utility (edit.exe) added.
- The syserror() function has been moved from libc.lib to the os.dll as an exported os api call.
- readline() now uses stdin and stdout for input and output.
- Bug in iomux fixed. Now a monitored event signals the iomux and not the associated object.
- Implemented popen() and pclose(). Also added a P_SUSPEND parameter to spawn() to allow new jobs to be started suspended.
- The kernel version information is now kept in a version resource in krnl.dll. The version information is retrieved using the new module version information functions in verinfo.c.
- The build type can now be controlled by compile time switches. The kernel version can be displayed in the Windows Explorer by viewing Properties for krnl.dll and selecting the Version tab.
- User management added to kernel. Each thread is now assigned to a user and a group. A thread has both a real and an effective user and group owner. The {get|set}[e]{uid|gid}() functions can be used to change the effective and real user and group for a thread. When a new thread is created the effective user and group are inherited from the creator thread.
- Added functions to query /etc/passwd and /etc/group files.
- New whoami, id, chmod, and chown commands added to shell. The format of the output from ls has been changed to display the file permission info.
- New file system version for DFS. The new version supports user and group owner for files and directories as well as permission bits. The new DFS version also supports files larger than 2GB. The fchown() and chown() functions has been added to vfs.
- DES-based crypt() implementation added.
- The spawn() function now computes the pgm parameter from the cmdline parameter if the pgm parameter is NULL. The initpgm and initargs properties in the [os] section of /etc/os.ini has been replaced with a single property named init. The default for init has been changed to /bin/sh.
- The behavour of the initial application has been changed. Previously the os shut down after the initial application exited. Now the initial application is executed again if it exits.
- Telnet daemon moved from the shell to separate server (telnetd.exe). The new telnet daemon has a more robust handling of the telnet protocol. The telnet daemon invokes the new login utlity in order to log on user.
- FTP daemon implemented.
Download (0.38MB)
Added: 2005-10-21 License: GPL (GNU General Public License) Price:
1466 downloads
Tiny C Compiler 0.9.23
Tiny C compiles so fast that even for big projects Makefiles may not be necessary. more>>
Tiny C compiles so fast that even for big projects Makefiles may not be necessary.
TinyCC (aka TCC) is a small but hyper fast C compiler. Unlike other C compilers, it is meant to be self-relying: you do not need an external assembler or linker because TCC does that for you.
TCC not only supports ANSI C, but also most of the new ISO C99 standard and many GNUC extensions including inline assembly.
TCC can also be used to make C scripts, i.e. pieces of C source that you run as a Perl or Python script. Compilation is so fast that your script will be as fast as if it was an executable. TCC can also automatically generate memory and bound checks while allowing all C pointers operations. TCC can do these checks even if non patched libraries are used.
With libtcc, you can use TCC as a backend for dynamic code generation
TCC mainly supports the i386 target on Linux and Windows. There are alpha ports for the ARM (arm-tcc) and the TMS320C67xx targets (c67-tcc).
Main features:
- SMALL! You can compile and execute C code everywhere, for example on rescue disks (about 100KB for x86 TCC executable, including C preprocessor, C compiler, assembler and linker).
- FAST! tcc generates optimized x86 code. No byte code overhead. Compile, assemble and link several times faster than GCC.
- UNLIMITED! Any C dynamic library can be used directly. TCC is heading torward full ISOC99 compliance. TCC can of course compile itself.
- SAFE! tcc includes an optional memory and bound checker. Bound checked code can be mixed freely with standard code.
- Compile and execute C source directly. No linking or assembly necessary. Full C preprocessor and GNU-like assembler included.
- C script supported : just add #!/usr/local/bin/tcc -run at the first line of your C source, and execute it directly from the command line.
- With libtcc, you can use TCC as a backend for dynamic code generation.
Enhancements:
- initial PE executable format for windows version (grischka)
- #pragma pack support (grischka)
- #include_next support (Bernhard Fischer)
- ignore -pipe option
- added -f[no-]leading-underscore
- preprocessor function macro parsing fix (grischka)
<<lessTinyCC (aka TCC) is a small but hyper fast C compiler. Unlike other C compilers, it is meant to be self-relying: you do not need an external assembler or linker because TCC does that for you.
TCC not only supports ANSI C, but also most of the new ISO C99 standard and many GNUC extensions including inline assembly.
TCC can also be used to make C scripts, i.e. pieces of C source that you run as a Perl or Python script. Compilation is so fast that your script will be as fast as if it was an executable. TCC can also automatically generate memory and bound checks while allowing all C pointers operations. TCC can do these checks even if non patched libraries are used.
With libtcc, you can use TCC as a backend for dynamic code generation
TCC mainly supports the i386 target on Linux and Windows. There are alpha ports for the ARM (arm-tcc) and the TMS320C67xx targets (c67-tcc).
Main features:
- SMALL! You can compile and execute C code everywhere, for example on rescue disks (about 100KB for x86 TCC executable, including C preprocessor, C compiler, assembler and linker).
- FAST! tcc generates optimized x86 code. No byte code overhead. Compile, assemble and link several times faster than GCC.
- UNLIMITED! Any C dynamic library can be used directly. TCC is heading torward full ISOC99 compliance. TCC can of course compile itself.
- SAFE! tcc includes an optional memory and bound checker. Bound checked code can be mixed freely with standard code.
- Compile and execute C source directly. No linking or assembly necessary. Full C preprocessor and GNU-like assembler included.
- C script supported : just add #!/usr/local/bin/tcc -run at the first line of your C source, and execute it directly from the command line.
- With libtcc, you can use TCC as a backend for dynamic code generation.
Enhancements:
- initial PE executable format for windows version (grischka)
- #pragma pack support (grischka)
- #include_next support (Bernhard Fischer)
- ignore -pipe option
- added -f[no-]leading-underscore
- preprocessor function macro parsing fix (grischka)
Download (0.41MB)
Added: 2005-11-21 License: LGPL (GNU Lesser General Public License) Price:
1449 downloads
ShakeTracker 0.4.6
Shake tracker is a MIDI sequencer aimed to all the tracker lovers who allways wanted to go midi. more>>
Shake tracker is a MIDI sequencer aimed to all the tracker lovers who allways wanted to go midi, while keeping all sort of cool tracker features.
Shake tracker has a tracker-like interface which supports patterns, orders and IT-like effects.
Each track (midi channel) is subdivided in columns of its on, so this adds an extra layer to pattern editing. Note on, Noteoff and velocity are also implemented the usual way, while the effect column understands most of IT commands with similar parameter ranges. Finally, theres also a controller/effects column and plans for adding "paintable controllers" support.
Shake tracker has been programmed with MIDI bandwith issues in mind, so its perfectly usable on external synths, softsynths and soundcard synths. There is actually a Windows version of this program, but its not native and it needs you to install an Xserver.
Many features of modern sequencers are still missing, such as sysex and midi in, but the program is perfectly usable and many people wrote songs with it (check downloads section).
<<lessShake tracker has a tracker-like interface which supports patterns, orders and IT-like effects.
Each track (midi channel) is subdivided in columns of its on, so this adds an extra layer to pattern editing. Note on, Noteoff and velocity are also implemented the usual way, while the effect column understands most of IT commands with similar parameter ranges. Finally, theres also a controller/effects column and plans for adding "paintable controllers" support.
Shake tracker has been programmed with MIDI bandwith issues in mind, so its perfectly usable on external synths, softsynths and soundcard synths. There is actually a Windows version of this program, but its not native and it needs you to install an Xserver.
Many features of modern sequencers are still missing, such as sysex and midi in, but the program is perfectly usable and many people wrote songs with it (check downloads section).
Download (0.36MB)
Added: 2005-12-02 License: GPL (GNU General Public License) Price:
1425 downloads
Minesweeper 1.1
Minesweeper is a Java game clone from the Windows version of Minesweeper. more>>
Minesweeper is a Java game clone from the Windows version of Minesweeper.
Minesweeper is a game written by Chris Dailey in Java using Swing.
Version 1.1 features the basic game play.
The following table shows what the mouse clicks on squares do while the game is started.
COVERED
Set the square to UNCOVERED.
If there is a mine, the game ends (lose).
If all empty squares are uncovered, the game ends (win).
Otherwise the game continues. Set the square to FLAGGED.
UNCOVERED
Nothing if the number of flags in adjacent squares equals the number in the uncovered square
UNCOVER adjacent covered squares
else
temporarily highlight adjacent covered squares
FLAGGED
Nothing Set the square to QUESTIONED.
QUESTIONED
Nothing Set the square to COVERED.
<<lessMinesweeper is a game written by Chris Dailey in Java using Swing.
Version 1.1 features the basic game play.
The following table shows what the mouse clicks on squares do while the game is started.
COVERED
Set the square to UNCOVERED.
If there is a mine, the game ends (lose).
If all empty squares are uncovered, the game ends (win).
Otherwise the game continues. Set the square to FLAGGED.
UNCOVERED
Nothing if the number of flags in adjacent squares equals the number in the uncovered square
UNCOVER adjacent covered squares
else
temporarily highlight adjacent covered squares
FLAGGED
Nothing Set the square to QUESTIONED.
QUESTIONED
Nothing Set the square to COVERED.
Download (MB)
Added: 2006-01-18 License: GPL (GNU General Public License) Price:
1385 downloads
XDaliClock 2.23
XDaliClock is a digital clock for Mac OS X, the X Window System, and PalmOS devices. more>>
XDaliClock is a digital clock for Mac OS X, the X Window System, and PalmOS devices. When a digit changes, it "melts" into its new shape with color-cycling.
Dali Clock is a digital clock. When a digit changes, it "melts" into its new shape. The date is displayed when the mouse is pressed. The window can be made transparent, and can do funky psychedelic color cycling.
It is available for X11, MacOS X, and PalmOS. There is no Windows version, so dont ask.
It can display in 12 or 24 hour modes, and displays the date when a mouse button is held down. It has two large fonts built into it, but it can animate most other fonts that contain all of the digits. It can also do some funky psychedelic colormap cycling, and can use overlay planes or the `shape extension so that the window is transparent.
In the default configuration, this program is very network-intensive. If it seems sluggish, try the "-memory high" option (see the man page). It will take a little longer to start up, but will then go easy on the bandwidth.
This program was inspired by the Alto/Macintosh programs of the same name, written by Steve Capps some time in the early eighties. This implementation is mine, and if youre looking for another reason to hate the X Windows ``feature of network-transparent graphics, well here you go.
Enhancements:
- The OS X version has a prettier preferences panel
- The PalmOS version has smoother morphing, a bigger "seconds only" font, and does color cycling on color devices.
- The X11 version has smoother morphing, better color-cycling contrast, and three more (larger) built-in fonts.
<<lessDali Clock is a digital clock. When a digit changes, it "melts" into its new shape. The date is displayed when the mouse is pressed. The window can be made transparent, and can do funky psychedelic color cycling.
It is available for X11, MacOS X, and PalmOS. There is no Windows version, so dont ask.
It can display in 12 or 24 hour modes, and displays the date when a mouse button is held down. It has two large fonts built into it, but it can animate most other fonts that contain all of the digits. It can also do some funky psychedelic colormap cycling, and can use overlay planes or the `shape extension so that the window is transparent.
In the default configuration, this program is very network-intensive. If it seems sluggish, try the "-memory high" option (see the man page). It will take a little longer to start up, but will then go easy on the bandwidth.
This program was inspired by the Alto/Macintosh programs of the same name, written by Steve Capps some time in the early eighties. This implementation is mine, and if youre looking for another reason to hate the X Windows ``feature of network-transparent graphics, well here you go.
Enhancements:
- The OS X version has a prettier preferences panel
- The PalmOS version has smoother morphing, a bigger "seconds only" font, and does color cycling on color devices.
- The X11 version has smoother morphing, better color-cycling contrast, and three more (larger) built-in fonts.
Download (0.58MB)
Added: 2006-01-09 License: BSD License Price:
1383 downloads
X-Unikey 1.0.3b
X-Unikey lets you type Vietnamese in X Window environment. more>>
X-Unikey project lets you type Vietnamese in X Window environment. X-Unikey is Unikey ported to Linux and FreeBSD.
It has been tested with many popular programs, such as OpenOffice, emacs, vim, QT applications, GTK applications... X-Unikey has all the features of the Windows version, except that its GUI is still too simplified.
All options are set through configuration file or keyboard shortcuts.
Enhancements:
- This release was unified with Unikey.
- Some bugs were fixed, including an array out of range error in macro matching that caused the engine to crash.
- Some unused options were removed.
<<lessIt has been tested with many popular programs, such as OpenOffice, emacs, vim, QT applications, GTK applications... X-Unikey has all the features of the Windows version, except that its GUI is still too simplified.
All options are set through configuration file or keyboard shortcuts.
Enhancements:
- This release was unified with Unikey.
- Some bugs were fixed, including an array out of range error in macro matching that caused the engine to crash.
- Some unused options were removed.
Download (0.32MB)
Added: 2006-02-14 License: GPL (GNU General Public License) Price:
1376 downloads
GetDP 1.2.0
GetDP is a general finite element solver using mixed elements to discretize de Rham-type complexes in one, two, and 3 dimensions more>>
GetDP is a general finite element solver using mixed elements to discretize de Rham-type complexes in one, two, and three dimensions.
GetDP has features like closeness between the input data defining discrete problems (written by the user in ASCII data files) and the symbolic mathematical expressions of these problems.
Enhancements:
- This release simplifies the parser by using standard loops instead of the multi-index constructs, and removes the Cygwin dependency for the Windows version.
<<lessGetDP has features like closeness between the input data defining discrete problems (written by the user in ASCII data files) and the symbolic mathematical expressions of these problems.
Enhancements:
- This release simplifies the parser by using standard loops instead of the multi-index constructs, and removes the Cygwin dependency for the Windows version.
Download (0.74MB)
Added: 2006-03-11 License: GPL (GNU General Public License) Price:
1323 downloads
kydpdict 0.9.3
Kydpdict is a graphical frontend to Collins English-Polish, Polish-English and Langenscheidt Polish-German. more>>
Kydpdict is a graphical frontend to Collins Polish-English, English-Polish and Langenscheidt Polish-German. German-Polish dictionaries published by Young Digital Poland.
This is a front-end to YDP Collins dictionary. You need to have windows version installed. In fact you need only four files:
dict100.dat, dict101.dat, dict100.idx, dict101.idx
for German language these will be needed:
dict200.dat, dict201.dat, dict200.idx, dict201.idx
It is very possible that there is also French version of YDP dictionary that also can be used with this program. Please contact me if you have such thing.
The program will ask you to supply the path to a directory where these files are located. Additionaly, if you would have mounted CD-ROM with the dictionary, the program is able to play samples with prononciation of English words. (note that you can simply copy files from CD-ROM somewhere and pass that path to kydpdict. The player is configurable so you can encode these files to mp3 or ogg).
Most notable feature of kydpdict is that every time you copy a word to the clipboard (it is enough to highlight it) the application will catch it and try to find in the current dictionary, then will put its window on top so you can actually read the definition of that word (or the most similar one). To turn off this behavior simply minimize kydpdict window or use toolbal or tray icon menu. In order to quickly enter a new word without using mouse just press ESC and then type.
This application is heavily based on ydpdict by Wojciech Kaniewski.
Enhancements:
- This version brings some usability fixes and a new option to have program initially hidden.
<<lessThis is a front-end to YDP Collins dictionary. You need to have windows version installed. In fact you need only four files:
dict100.dat, dict101.dat, dict100.idx, dict101.idx
for German language these will be needed:
dict200.dat, dict201.dat, dict200.idx, dict201.idx
It is very possible that there is also French version of YDP dictionary that also can be used with this program. Please contact me if you have such thing.
The program will ask you to supply the path to a directory where these files are located. Additionaly, if you would have mounted CD-ROM with the dictionary, the program is able to play samples with prononciation of English words. (note that you can simply copy files from CD-ROM somewhere and pass that path to kydpdict. The player is configurable so you can encode these files to mp3 or ogg).
Most notable feature of kydpdict is that every time you copy a word to the clipboard (it is enough to highlight it) the application will catch it and try to find in the current dictionary, then will put its window on top so you can actually read the definition of that word (or the most similar one). To turn off this behavior simply minimize kydpdict window or use toolbal or tray icon menu. In order to quickly enter a new word without using mouse just press ESC and then type.
This application is heavily based on ydpdict by Wojciech Kaniewski.
Enhancements:
- This version brings some usability fixes and a new option to have program initially hidden.
Download (0.64MB)
Added: 2006-04-16 License: GPL (GNU General Public License) Price:
1291 downloads
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above windows version search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed