Coder Social home page Coder Social logo

disasm's People

Contributors

micrified avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

disasm's Issues

Race conditions in the memory manager.

The memory manager allows processes to initialize the shared file. This can go two ways.

  1. The process is the first to try to access the file, in which case it creates it and installs the semaphore.
  2. The process is not the first, in which case it opens the file and uses the internal data structures.

The race happens when the process which created the file is context-swapped out before it can install the infrastructure necessary to control access. Other processes will then try to use a non-initialized file.

Another problem occurs when the creating process runs it's full length, along with some other processes, and they terminate. The last process owning the file destroys it. If another file somehow opened this file but had yet to deposit it's "membership", then when it resumes execution it will crash because the file has been destroyed. I cannot foresee any good way to get around this right now. Somehow, I must account for all processes, not knowing when they will run, or how many there are.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.