Зачем запускать автокликер именно на телефоне? Какой с этого профит?
Запускайте виртуалку с андроидом на ПК, запускайте там свой автокликер и не мучайте экран телефона.
Всё зависит от трафика от пользователей.
Рассчитать можно только в условных попугаях. Т.е. берём выборку из 10 подключений, смотрим статистику - какой трафик, сколько ресурсов тратится. Потом делим это на 10 и получаем приблизительное среднее потребление. В зависимости от этого среднего значения - смотрим на доступные ресурсы сервера.
1. Глюки флешки и "защита от записи" - недвусмысленно указывают на то, что флешка уже исчерпала свой ресурс. Как минимум половина её - так точно (раз удалось её поднять на 8 гб).
2. Накатывать прошивки не разобрав флешку и не узнав какой там контроллер и тип памяти - верный путь отправить даже исправную изначально флешку в урну.
USB разъём там с вероятностью 90% только для внешних флешек, чтобы играть с них медиаконтент.
Приводы CD\DVD издревле делились на те которые только R - т.е. только читают, и RW - т.е. которые пишут.
Единичные случаи, когда в дешёвых плеерах имелся в наличии пишущий привод. Если на нём отсутствуют соответствующие значки - то он умеет только читать.
Изучайте работу с базами. А потом строите запросы по нужной вам логике.
Как-то примерно так:
При добавлении в избранное - записать для ид.пользователя соответствующую позицию в таблицу избранного.
При просмотре избранного - запросить все записи из таблицы избранного по ид.пользователя.
При добавлении в корзину - записать для ид.пользователя соответствующую позицию в таблицу корзины.
При просмотре корзины - запросить все записи из таблицы корзины по ид.пользователя.
При просмотре каталога - запросить весь список товаров из прайса исключая те, которые есть у ид.пользователя в корзине.
И никакую голову тут ломать вообще нет необходимости. Обычная логика магазина.
Во-первых, не использовать sum.
Во-вторых, в первой функции name не вернётся примерно никогда.
В-третьих, результат неплохо бы обернуть в int() прежде чем сравнивать с цифрами, иначе условие не выполняется.
В-четвёртых, привыкайте оборачивать отдельные условия в скобки, и читабельность повысится и ошибки будут сразу заметными. Например как-то так:
if ((int(clas) == 9) and (int(su) > 180)) or ((int(clas) == 10) and (int(su) > 200)) or ((int(clas) == 11) and (int(su) > 220)):
Это однозначно проблемы с видео-памятью.
Если для экрана используется интегрированная видяха - то можно проверить оперативную память чем-нибудь типа memtest.
Если используется дискретная - то проверить видео-память чем-нибудь типа mats.
По старым околосоветским нормативам, которые никто не отменял - оператору ЭВМ в каждый час работы положен 15 минутный перерыв. Т.е. 45 минут поработал - 15 минут зарядку сделал. И глаза отдохнут и размяться можно.