Skip to main content
fixed "fixes"
Source Link

New ideas: as your "OS" doesn't do that much, your possibilities are pretty limitless (and it can be interesting just "faking it in Python"). You can start emulating what an OS actually does, for example data storage.

If you stick to files/dirs, think out a scheme onfor representing directories and files as entities/objects/values, connect this with the dir command, then add a type command (display contents of a file).

Perhaps add a notion of "special" files/dirs, that are not actually stored, but their contents are computed by some code (make it easy to register a function as an entry in the filesystem). Bang, you have "device drivers").

Or leave/upgrade the DOS theme and figure out how you would best like to approach storing/accessing data, ie. database that stores data and associated set of tags that are used to store "system" tags (name, content type, create date, permissions, whatever...) as well as arbitrary user tags. Think out a way of how to index your tags for fast search, think about ways how to efficiently search for/uniquely identify file in absence of directories (as always, it's a tradeoff).

Find some persistence scheme for files (and directories, if applicable) - save it all into a yaml file or db, map to real directory on the disk, whatever, as long as it works.

Consider "versioning" - storing multiple versions of the same file - and a method of "addressing" different versions of a file.

Add support for running Python scripts from your simulated files.

Think out how scripts could return some interesting values, and how would you pass them from one script to another, or to the "shell", if there are no (more) redirections.

Oh, and if you won't consider it premature optimization, remove those sleeps from your code, and it will start to get slow enough on its own, as you add more functionality.

New ideas: as your "OS" doesn't do that much, your possibilities are pretty limitless (and it can be interesting just "faking it in Python"). You can start emulating what an OS actually does, for example data storage.

If you stick to files/dirs, think out a scheme on representing directories and files as entities/objects/values, connect this with the dir command, then add a type command (display contents of a file).

Perhaps add a notion of "special" files/dirs, that are not actually stored, but their contents are computed by some code (make it easy to register a function as an entry in the filesystem). Bang, you have "device drivers").

Or leave/upgrade the DOS theme and figure out how you would best like to approach storing/accessing data, ie. database that stores data and associated set of tags that are used to store "system" tags (name, content type, create date, permissions, whatever...) as well as arbitrary user tags. Think out a way of how to index your tags for fast search, think about ways how to efficiently search for/uniquely identify file in absence of directories (as always, it's a tradeoff).

Find some persistence scheme for files (and directories, if applicable) - save it all into a yaml file or db, map to real directory on the disk, whatever, as long as it works.

Consider "versioning" - storing multiple versions of the same file - and a method of "addressing" different versions of a file.

Add support for running Python scripts from your simulated files.

Think out how scripts could return some interesting values, and how would you pass them from one script to another, or to the "shell", if there are no (more) redirections.

Oh, and if you won't consider it premature optimization, remove those sleeps from your code, and it will start to get slow enough as you add more functionality.

New ideas: as your "OS" doesn't do that much, your possibilities are pretty limitless (and it can be interesting just "faking it in Python"). You can start emulating what an OS actually does, for example data storage.

If you stick to files/dirs, think out a scheme for representing directories and files as entities/objects/values, connect this with the dir command, then add a type command (display contents of a file).

Perhaps add a notion of "special" files/dirs, that are not actually stored, but their contents are computed by some code (make it easy to register a function as an entry in the filesystem). Bang, you have "device drivers").

Or leave/upgrade the DOS theme and figure out how you would best like to approach storing/accessing data, ie. database that stores data and associated set of tags that are used to store "system" tags (name, content type, create date, permissions, whatever...) as well as arbitrary user tags. Think out a way of how to index your tags for fast search, think about ways how to efficiently search for/uniquely identify file in absence of directories (as always, it's a tradeoff).

Find some persistence scheme for files (and directories, if applicable) - save it all into a yaml file or db, map to real directory on the disk, whatever, as long as it works.

Consider "versioning" - storing multiple versions of the same file - and a method of "addressing" different versions of a file.

Add support for running Python scripts from your simulated files.

Think out how scripts could return some interesting values, and how would you pass them from one script to another, or to the "shell", if there are no (more) redirections.

Oh, and if you won't consider it premature optimization, remove those sleeps from your code, it will start to get slow enough on its own, as you add more functionality.

Post Made Community Wiki by 200_success
deleted 11 characters in body
Source Link
Jamal
  • 35.2k
  • 13
  • 134
  • 238

New ideas: as your "OS" doesn't do that much, your possibilities are pretty limitless (and it can be interesting just "faking it in python"Python"). You can start emulating what an OS actually does, for example data storage.

If you stick to files/dirs, think out a scheme how to representon representing directories and files as entities/objects/values, connect this with the dir command, then add a type command (display contents of a file).

Perhaps add a notion of "special" files/dirs, that are not actually stored, but their contents are computed by some code (make it easy to register a function as an entry in the filesystem). Bang, you have "device drivers" ;-)).

Or leave/upgrade the DOS theme and figure out how you would best like to approach storing/accessing data, ie. database that stores data and associated set of tags that are used to store "system" tags (name, content type, create date, permissions, whatever...) as well as arbitrary user tags. Think out a way of how to index your tags for fast search, think about ways how to efficiently search for/uniquely identify file in absence of directories (as always, it's a tradeoff).

Find some persistence scheme for files (and directories, if applicable) - save it all into a yaml file or db, map to real directory on the disk, whatever, as long as it works ;-).

Consider "versioning" - storing multiple versions of the same file - and a method of "adrresing""addressing" different versions of a file.

Add support for running pythonPython scripts from your simulated files.

Think out how scripts could return some interesting values, and how would you pass them from one script to another, or to the "shell", if there are no [more](more) redirections.

Oh, and if you won't consider it premature optimization, remove those sleeps from your code, and it will start to get slow enough as you add more functionality ;-))).

New ideas: as your "OS" doesn't do that much, your possibilities are pretty limitless (and it can be interesting just "faking it in python"). You can start emulating what an OS actually does, for example data storage.

If you stick to files/dirs, think out a scheme how to represent directories and files as entities/objects/values, connect this with the dir command, then add a type command (display contents of a file).

Perhaps add a notion of "special" files/dirs, that are not actually stored, but their contents are computed by some code (make it easy to register a function as an entry in the filesystem). Bang, you have "device drivers" ;-))

Or leave/upgrade the DOS theme and figure out how you would best like to approach storing/accessing data, ie. database that stores data and associated set of tags that are used to store "system" tags (name, content type, create date, permissions, whatever...) as well as arbitrary user tags. Think out a way of how to index your tags for fast search, think about ways how to efficiently search for/uniquely identify file in absence of directories (as always, it's a tradeoff).

Find some persistence scheme for files (and directories, if applicable) - save it all into a yaml file or db, map to real directory on the disk, whatever, as long as it works ;-)

Consider "versioning" - storing multiple versions of the same file - and a method of "adrresing" different versions of a file.

Add support for running python scripts from your simulated files.

Think out how scripts could return some interesting values, and how would you pass them from one script to another, or to the "shell", if there are no [more] redirections.

Oh, and if you won't consider it premature optimization, remove those sleeps from your code, it will start to get slow enough as you add more functionality ;-)))

New ideas: as your "OS" doesn't do that much, your possibilities are pretty limitless (and it can be interesting just "faking it in Python"). You can start emulating what an OS actually does, for example data storage.

If you stick to files/dirs, think out a scheme on representing directories and files as entities/objects/values, connect this with the dir command, then add a type command (display contents of a file).

Perhaps add a notion of "special" files/dirs, that are not actually stored, but their contents are computed by some code (make it easy to register a function as an entry in the filesystem). Bang, you have "device drivers").

Or leave/upgrade the DOS theme and figure out how you would best like to approach storing/accessing data, ie. database that stores data and associated set of tags that are used to store "system" tags (name, content type, create date, permissions, whatever...) as well as arbitrary user tags. Think out a way of how to index your tags for fast search, think about ways how to efficiently search for/uniquely identify file in absence of directories (as always, it's a tradeoff).

Find some persistence scheme for files (and directories, if applicable) - save it all into a yaml file or db, map to real directory on the disk, whatever, as long as it works.

Consider "versioning" - storing multiple versions of the same file - and a method of "addressing" different versions of a file.

Add support for running Python scripts from your simulated files.

Think out how scripts could return some interesting values, and how would you pass them from one script to another, or to the "shell", if there are no (more) redirections.

Oh, and if you won't consider it premature optimization, remove those sleeps from your code, and it will start to get slow enough as you add more functionality.

Source Link

New ideas: as your "OS" doesn't do that much, your possibilities are pretty limitless (and it can be interesting just "faking it in python"). You can start emulating what an OS actually does, for example data storage.

If you stick to files/dirs, think out a scheme how to represent directories and files as entities/objects/values, connect this with the dir command, then add a type command (display contents of a file).

Perhaps add a notion of "special" files/dirs, that are not actually stored, but their contents are computed by some code (make it easy to register a function as an entry in the filesystem). Bang, you have "device drivers" ;-))

Or leave/upgrade the DOS theme and figure out how you would best like to approach storing/accessing data, ie. database that stores data and associated set of tags that are used to store "system" tags (name, content type, create date, permissions, whatever...) as well as arbitrary user tags. Think out a way of how to index your tags for fast search, think about ways how to efficiently search for/uniquely identify file in absence of directories (as always, it's a tradeoff).

Find some persistence scheme for files (and directories, if applicable) - save it all into a yaml file or db, map to real directory on the disk, whatever, as long as it works ;-)

Consider "versioning" - storing multiple versions of the same file - and a method of "adrresing" different versions of a file.

Add support for running python scripts from your simulated files.

Think out how scripts could return some interesting values, and how would you pass them from one script to another, or to the "shell", if there are no [more] redirections.

Oh, and if you won't consider it premature optimization, remove those sleeps from your code, it will start to get slow enough as you add more functionality ;-)))