Мне нужно как можно более загружать большие модели и другие структурированные двоичные данные на более старую игровую консоль на компакт-дисках. Каков наилучший способ сделать это? Данные будут экспортированы из приложения Python. Это довольно сложный проект для хобби.Загрузка файла с оптимальным файлом данных на игровой консоли
Requierements:
- не полагаться на полностью стандартный STL совместимый - я мог бы использовать USTL хотя.
- как немного накладные расходы как возможно. Стремитесь к решению так хорошо. что он может быть использован на оригинальной Playstation, и, тем не менее, как можно более современный и элегантный.
- нет обратный/передний совместимость необходимо.
- не копирует большие куски вокруг - предпочтительно файлы загружаются в ОЗУ в фоновом режиме, и все большие куски доступны непосредственно оттуда позже.
- не должен полагаться на цель, имеющую одинаковую согласованность и выравнивание, то есть плагин C в Python, который выгружает свои структуры на диск, не будет очень хорошей идеей.
- должен позволять перемещать загруженные данные, так как с отдельными файлами 1/3 размер ОЗУ, фрагментация может быть проблемой. Нет MMU, чтобы злоупотреблять.
- робастность - отличный бонус, так как мой охват внимания очень короткий, то есть я бы сэкономил часть кода и забыл загрузку или наоборот, так что, по крайней мере, немой гарантией было бы хорошо.
- Возможность обмена между загруженными данными и данными, полученными во время выполнения, без накладных расходов и без серьезных проблем с управлением памятью будет хорошим бонусом.
I рода имеет пол-план разбора в Python заголовках тривиального, ограниченный синтаксис C, который будет использовать структуры со смещением вместо указателей, и удобство оболочки Структура/классы в главном приложении с добытчиками, переводящий смещения для правильного ввода указателей/ссылок, но я хотел бы услышать ваши предложения.
Уточнение: запрос в основном касается структуры загрузки данных и проблем управления памятью.
Спасибо, но подумайте, что произойдет, если вы попытаетесь работать с базой данных, хранящейся на компакт-диске, вращающемся в 4-кратном медленном приводе с простым килобайтом буфера. Нет MMU, нет MMAP, нет оперативной памяти и нет реальной ОС. На самом деле 16 МБ ОЗУ на моей конкретной платформе, но я хочу использовать ее до краев. ;) Также я хочу почти полностью избежать накладных расходов на де-сериализации. Я был расплывчатым из-за особенностей устройства, потому что на самом деле хочу использовать части техники на нескольких игровых консолях, начиная с середины 90-х годов до нынешних карманных. Не обижайтесь, мне нравится SQLite, но это было бы самоубийством. – 3yE