A free Windows-compatible Operating System - mirrored from GitHub
Find a file
Trevor Thompson 52c30fdf37 [NTFS] - Add some helper functions for new features. Add some fixes. Add support for creating an index allocation, splitting a b-tree node, or "demoting" the index root. This allows for file creation without functional limitations.
+AddBitmap() - adds a $BITMAP attribute to a file record.
+AddIndexAllocation() - adds an $INDEX_ALLOCATION attribute to a file record.
+CountBTreeKeys() - Counts the number of linked B-Tree keys.
CreateIndexBufferFromBTreeNode() - Set INDEX_NODE_LARGE if the node has sub-nodes.
CreateIndexRootFromBTree() - Simplify the usage and math of MaxIndexSize; make it only account for the cumulative size of the index entries.
+DemoteBTreeRoot() - Replaces the contents of an index root with a dummy key, and puts those contents in a new node, which is made a child of the dummy key. This is done when an index root grows too large.
+GetIndexEntryVCN() - Retrieves the VCN from an index entry.
NtfsAddFilenameToDirectory() - Fix math for MaxIndexRootSize.
NtfsInsertKey() - Add support for splitting a B-Tree node. Don't check size of index root (that will be handled later).
+SplitBTreeNode() - Called when a B-Tree node grows too large.
UpdateIndexAllocation() - Create an $I30 index allocation attribute and bitmap attribute if needed.
UpdateIndexNode() - Update children before updating the current node. Store VCN of child nodes in the index entries of their respective keys.

svn path=/branches/GSoC_2016/NTFS/; revision=75707
2017-12-10 11:15:23 +01:00
base Fix remaining text file line endings in the tree. (#18) 2017-10-06 15:00:36 +02:00
boot [NTFS] - Disable write support by default. Enable it via the registry. 2017-12-10 11:14:22 +01:00
dll Fix remaining text file line endings in the tree. (#18) 2017-10-06 15:00:36 +02:00
drivers [NTFS] - Add some helper functions for new features. Add some fixes. Add support for creating an index allocation, splitting a b-tree node, or "demoting" the index root. This allows for file creation without functional limitations. 2017-12-10 11:15:23 +01:00
hal Fix remaining text file line endings in the tree. (#18) 2017-10-06 15:00:36 +02:00
media Fix remaining text file line endings in the tree. (#18) 2017-10-06 15:00:36 +02:00
modules Add .gitattributes and .gitignore files and normalize line endings in the repository (#10) 2017-10-04 20:37:32 +02:00
ntoskrnl Remove unwanted .gitignore files. 2017-10-04 10:28:36 +02:00
sdk [INCLUDE]: ntddrdsk.h: Fix "__cplusplus" and the ramdisk GUID definitions. 2017-10-06 01:08:10 +02:00
subsystems Add .gitattributes and .gitignore files and normalize line endings in the repository (#10) 2017-10-04 20:37:32 +02:00
win32ss [NTUSER] Fix rogue CR in a LF-only file. 2017-10-06 00:04:46 +02:00
.gitattributes Fix remaining text file line endings in the tree. (#18) 2017-10-06 15:00:36 +02:00
.gitignore Add .gitattributes and .gitignore files and normalize line endings in the repository (#10) 2017-10-04 20:37:32 +02:00
apistatus.lst
CMakeLists.txt
configure.cmd Fix remaining text file line endings in the tree. (#18) 2017-10-06 15:00:36 +02:00
configure.sh
COPYING
COPYING.ARM
COPYING.LIB
COPYING3
COPYING3.LIB
CREDITS
Doxyfile
INSTALL
PreLoad.cmake
README.md Fix url typo in README (#9) 2017-10-04 11:40:37 +03:00
toolchain-clang.cmake
toolchain-gcc.cmake
toolchain-msvc.cmake

ReactOS Project

Current version: 0.4.6 ReactOS Logo

What is ReactOS?

ReactOS™ is an Open Source effort to develop a quality operating system that is compatible with applications and drivers written for the Microsoft® Windows™ NT family of operating systems (NT4, 2000, XP, 2003, Vista, Seven).

The ReactOS project, although currently focused on Windows Server 2003 compatibility, is always keeping an eye toward compatibility with Windows Vista and future Windows NT releases.

The code of ReactOS is licensed under GNU GPL 2.0+.

Building

To build the system it is strongly advised to use the ReactOS Build Environment (RosBE). Up-to-date versions for Windows and for Unix/GNU-Linux are available from our download page at: http://www.reactos.org/wiki/Build_Environment

Alternatively one can use Microsoft Visual C++ (MSVC) version 2010+. Building with MSVC is covered here: https://www.reactos.org/wiki/Building_with_MSVC

Binaries

To build ReactOS you must use run configure script in the directory you want to have builds. Choose configure.cmd or configure.sh depending on your system. Then run ninja <modulename> to build a module you want or just ninja to build all modules.

Bootable images

To build a bootable CD image run ninja bootcd from the build directory. This will create a CD image with a filename bootcd.iso.

See "Building ReactOS" for more details.

Installing

ReactOS can only be installed on a machine that has a FAT16 or FAT32 partition as the active (bootable) partition. The partition on which ReactOS is to be installed (which may or may not be the bootable partition) must also be formatted as FAT16 or FAT32. ReactOS Setup can format the partitions if needed.

To install ReactOS from the bootable CD distribution, extract the archive contents. Then burn the CD image, boot from it, and follow instructions.

See "Installing ReactOS" Wiki page or INSTALL for more details.

Testing

If you discover a bug in ReactOS search on JIRA first - it might be reported already. If not report the bug providing logs and as many information as possible.

See "File Bugs" for a guide.

NOTE: The bug tracker is not for discussions. Please use #reactos Freenode IRC channel or our forum.

More information

ReactOS is a Free and Open Source operating system based on the Windows architecture, providing support for existing applications and drivers, and an alternative to the current dominant consumer operating system.

It is not another wrapper built on Linux, like WINE. It does not attempt or plan to compete with WINE; in fact, the user-mode part of ReactOS is almost entirely WINE-based and our two teams have cooperated closely in the past.

ReactOS is also not "yet another OS". It does not attempt to be a third player like any other alternative OS out there. People are not meant to uninstall Linux and use ReactOS instead; ReactOS is a replacement for Windows users who want a Windows replacement that behaves just like Windows.

More information is available at: https://www.reactos.org.

Also see the media\doc subdirectory for some sparse notes.

Who is responsible

Active devs are listed as members of GitHub organization. Also see the CREDITS file for others.

Code mirrors

The main development is done on GitHub. We have an alternative mirror it case GitHub is down.

There is also an obsolete SVN archive repository that is kept for historical purposes.