Theseus | modern OS written from scratch in Rust

 by   theseus-os Rust Version: Current License: MIT

kandi X-RAY | Theseus Summary

kandi X-RAY | Theseus Summary

Theseus is a Rust library. Theseus has no bugs, it has no vulnerabilities, it has a Permissive License and it has medium support. You can download it from GitHub.

Theseus is a new OS written from scratch in Rust to experiment with novel OS structure, better state management, and how to leverage intralingual design principles to shift OS responsibilities like resource management into the compiler. For more info, check out Theseus's documentation or our published academic papers, which describe Theseus's design and implementation. Theseus is under active development, and although it is not yet mature, we envision that Theseus will be useful in high-end embedded systems or edge datacenter environments. We are continually working to improve the OS, including its fault recovery abilities for higher system availability without redundancy, as well as easier and more arbitrary live evolution and runtime flexbility.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              Theseus has a medium active ecosystem.
              It has 2442 star(s) with 135 fork(s). There are 31 watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              There are 29 open issues and 155 have been closed. On average issues are closed in 148 days. There are 20 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of Theseus is current.

            kandi-Quality Quality

              Theseus has 0 bugs and 0 code smells.

            kandi-Security Security

              Theseus has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              Theseus code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              Theseus is licensed under the MIT License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              Theseus releases are not available. You will need to build from source code and install.
              Installation instructions, examples and code snippets are available.
              It has 58 lines of code, 0 functions and 2 files.
              It has low code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of Theseus
            Get all kandi verified functions for this library.

            Theseus Key Features

            No Key Features are available at this moment for Theseus.

            Theseus Examples and Code Snippets

            No Code Snippets are available at this moment for Theseus.

            Community Discussions

            QUESTION

            Can you please explain Reed Solomon encoding part's Identity matrix?
            Asked 2020-May-23 at 14:08

            I am working on a object storage project where I need to understand Reed Solomon error correction algorithm, I have gone through this Doc as a starter and also some thesis paper.
            1. content.sakai.rutgers.edu
            2. theseus.fi
            but I can't seem to understand the lower part of the identity matrix (red box), where it is coming from. How this calculation is done?

            Can anyone please explain this.

            ...

            ANSWER

            Answered 2020-May-23 at 14:08

            The encoding matrix is a 6 x 4 Vandermonde matrix using the evaluation points {0 1 2 3 4 5} modified so that the upper 4 x 4 portion of the matrix is the identity matrix. To create the matrix, a 6 x 4 Vandermonde matrix is generated (where matrix[r][c] = pow(r,c) ), then multiplied with the inverse of the upper 4 x 4 portion of the matrix to produce the encoding matrix. This is the equivalent of "systematic encoding" with Reed Solomon's "original view" as mentioned in the Wikipedia article you linked to above, which is different than Reed Solomon's "BCH view", which links 1. and 2. refer to. The Wikipedia's example systematic encoding matrix is a transposed version of the encoding matrix used in the question.

            https://en.wikipedia.org/wiki/Vandermonde_matrix

            https://en.wikipedia.org/wiki/Reed%E2%80%93Solomon_error_correction#Systematic_encoding_procedure:_The_message_as_an_initial_sequence_of_values

            The code to generate the encoding matrix is near the bottom of this github source file:

            https://github.com/Backblaze/JavaReedSolomon/blob/master/src/main/java/com/backblaze/erasure/ReedSolomon.java

            Source https://stackoverflow.com/questions/59929677

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install Theseus

            On Linux (Debian-like distros), do the following:. See below for more detailed instructions.
            Obtain the Theseus repository (with all submodules): git clone --recurse-submodules https://github.com/theseus-os/Theseus.git
            Install Rust: curl https://sh.rustup.rs -sSf | sh
            Install dependencies: sudo apt-get install make gcc nasm pkg-config grub-pc-bin mtools xorriso qemu qemu-kvm
            Build and run (in QEMU): cd Theseus make run To exit QEMU, press Ctrl + A, then X.
            First, install Rust by following the setup instructions here. On Linux, just run:.
            Our personal preference is to use VS Code, which has excellent cross-platform support for Rust. Other options are available here.
            rust-analyzer, by matklad
            Better TOML, by bungcip
            x86 and x86_64 Assembly, by 13xforever

            Support

            While not strictly required, KVM will speed up the execution of QEMU. To install KVM, run the following command:. To enable KVM support, add host=yes to your make command, e.g.,.
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/theseus-os/Theseus.git

          • CLI

            gh repo clone theseus-os/Theseus

          • sshUrl

            git@github.com:theseus-os/Theseus.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link