For those of you who have heard nothing of my plans to write a RosFS
service for ReactOS, here are some details about my plan.
RosFS
RosFS is a small service running on system initialization by default
that indexes files, folders, users, devices, and network resources can
hold metadata via MySQL, sleepycat DB, TCL, Apache, and Perl; which will
all be embedded within the service itself. RosFS will hold encrypted
resources based off of a key that is created with the first startup of
ReactOS, it changes every 30 days to ensure security. The RosFS can be
accessed online via the built in web server with can be an encrypted
connection - SSL, or TLS. User ACLs can be set on a machine level or a
domain level. RosFS will support a SQL-like querying language that can
be written easily - it will have triggers, procedures, functions, and
saved queries - which are all logged. Triggers will be supplied by a
TCL-like language with features of Perl. An service will provide users
with current system updates, patches, etc stored on a domain server -
this option will only be installed on a powerful server with pretty good
hardware - ie: not for home use!!!
A few problems I know that will arise in developing such a project are:
1) Size
2) Security
3) Where to keep the files on the system
4) The RosFS query language will be trouble to write and maintain
depending on if a user uses such Databases like ORACLE, MySQL, MSSQL,
etc.
5) Explorer Integration - Will Explorer.exe need to be rewritten to
allow the addition of Metadata structures, etc.
6) Web integration - Perl, PHP, TCL, CGI, ISAPI???
Please send me comments and concerns about the RosFS project.
chorns(a)cvs.reactos.com wrote:
>CVSROOT: /CVS/ReactOS
>Module name: reactos
>Repository: reactos/tools/
>Changes by: chorns(a)mok.osexperts.com 04/10/24 10:51:33
>
>Modified files:
> ./: ChangeLog
> reactos/ntoskrnl/: Makefile
> reactos/regtests/regtests/: regtests.c regtests.def
> reactos/regtests/shared/: regtests.h
> reactos/tools/: regtests.c
>Added files:
> reactos/ntoskrnl/tests/: .cvsignore Makefile setup.c stubs.tst
> reactos/ntoskrnl/tests/tests/: .cvsignore
>
>Log message:
> 2004-10-24 Casper S. Hornstrup <chorns(a)users.sourceforge.net>
>
> * ntoskrnl/Makefile (TARGET_REGTESTS): Define to yes.
> * regtests/regtests/regtests.c (_ExitProcess): Declare.
> * regtests/regtests/regtests.def (_ExitProcess@4): Ditto.
> * regtests/shared/regtests.h (_ExitProcess): Ditto.
> * tools/regtests.c: Exit process using _ExitProcess();
> Properly support fastcall symbols.
> * ntoskrnl/tests: New directory.
> * ntoskrnl/tests/tests: Ditto.
> * ntoskrnl/tests/.cvsignore: New file.
> * ntoskrnl/tests/Makefile: Ditto.
> * ntoskrnl/tests/setup.c: Ditto.
> * ntoskrnl/tests/stubs.tst: Ditto.
> * ntoskrnl/tests/tests/.cvsignore: Ditto.
>
>_______________________________________________
>Ros-cvs mailing list
>Ros-cvs(a)reactos.com
>http://reactos.com/mailman/listinfo/ros-cvs
>
>
>
Hi,
I can't say I'm terribly overjoyed with having the /tests directory in
/ntoskrnl. Would it be possible instead to have a /tests root (on the
new SVN server) where all the tests would go? like /tests/ntoskrnl,
/tests/kmregtests etc...
I think it would make it a bit clearer...it just bugs me to have /tests
in ntoskrnl.
Best regards,
Alex Ionescu
What are the advantages in using zones when allocating memory in kernel
mode?
Are there other ways to pre-allocate an address range to be used for
small memory objects management (NP pool)?
Emanuele
Hartmut Birr wrote:
>CVSROOT: /CVS/ReactOS
>Module name: reactos
>Repository: reactos/ntoskrnl/ke/
>Changes by: hbirr(a)mok.osexperts.com 04/10/31 07:24:08
>
>Modified files:
> reactos/ntoskrnl/ke/: timer.c
>
>Log message:
> - The quantum of the idle thread must also end.
>
>
I thought that the NtYieldExecution call in PsIdleThreadMain should be
sufficient, isn't it?
Regards,
Filip
I found a note, in Kernel Mustard's (Steve Dispensa) blog, about guarded
mutexes, which is a completely new synchronization object to me.
typedef struct _KGUARDED_MUTEX
ULONG Count;
PKTHREAD Owner;
ULONG Contention;
KGATE Gate;
WORD KernelApcDisable;
WORD SpecialApcDisable;
ULONG CombinedApcDisable;
} KGUARDED_MUTEX, *PKGUARDED_MUTEX;
What are they? KM says they are less expensive than FAST_MUTEXes.
By the way, what is a KGATE?
Emanuele
Hello, if I try to compile explorer the following error occurs:
explorer.cpp: In function `int wWinMain(HINSTANCE__*, HINSTANCE__*, TCHAR*, int)':
explorer.cpp:714: error: call of overloaded `wcsstr(TCHAR*&, const wchar_t[9])' is ambiguous
c:/mingw/bin/../lib/gcc/mingw32/3.4.1/../../../../include/string.h:119: note: candidates are: wchar_t* wcsstr(const wchar_t*, const wchar_t*)
c:/mingw/bin/../lib/gcc/mingw32/3.4.1/../../../../include/c++/3.4.1/cwchar:227: note: wchar_t* std::wcsstr(wchar_t*, wchar_t*)
...
mingw32-make: *** [explorer.o] Error 1
Is there a problem with my w32api version?
EnricoB
Hi,
currently I'm trying to get ros to work on a multiprocessor system. There
exist many problems. The major problem is a dead lock, which occurs if
different processors try to acquire the DispatcherDatabaseLock and the
PiThreadLock. Sometimes, it seems, the sequence to acquire the two locks is
different. It would be nice, if someone can look for this problem.
- Hartmut