Компьютер — проблемы и решения. Часть 1.

Я решил начать новую серию статей о проблемах работы с компьютером. Я каждый день сижу за компьютером много часов, да и все в наше время проводят за компьютером какое-то время, и проблемы есть у всех. Я буду писать только о тех проблемах, с которыми столкнулся сам, хотя может быть в будущем все это как-то трансформируется.

В своей работе я часто вычисляю преобразования Фурье комплексной функции методом FFT (fast Fourier transformation). По русски это переводят как «Быстрое преобразование Фурье», и звучит не очень. Лучше использовать оригинальное название, но и оно на английском звучит плохо типа преобразование Фурье методом быстрого преобразования Фурье. Но сам метод непосредственно к преобразованию Фурье отношения не имеет. Я не стану его здесь описывать. Для меня важно, что в этом методе надо работать с комплексными матрицами очень большого размера.

А я программирую на языке Java (джава), и программы на этом языке в системе Виндовс исполняются с помощью специальной программы java.exe, которую называют виртуальной машиной или JRE (java runtime environment). Эту программу надо бесплатно скачивать из интернета и устанавливать. Я так и делал, но при этом просто заходил на сайт http://www.java.com/ru , там стоит большая кнопка, я ее кликал и все устанавливалось автоматически. Я и всем пользователям своих программ рекомендовал так делать.

При этом во время запуска JRE выделяла для себя определенное место в оперативной памяти компьютера. Если джава программе надо было больше места, то в процессе работы возникала ошибка «java.lang. OutOfMemoryError Java Heap Space», причем эту ошибку можно было увидеть только при запуске JRE из командной строки или из командного файла. В системе Виндовс такой файл должен иметь расширение «bat», например run.bat. В этом случае программа открывает дополнительное окно терминала, в котором сообщает об ошибках.

Чтобы выйти из положения нужно запускать программу из командной строки с параметром, который принудительно указывает сколько оперативной памяти надо выделить под программу. Выглядит это так

set path=C:\»Program Files»\Java\jre1.8.0_77\bin
java -jar -Xms1440m vkACLe2.jar
pause

Здесь первая строка просто указывает путь к папке, где записана JRE. На компьютере может быть много виртуальных машин разных версий, и указание пути позволяет запускать конкретную версию. Параметр, расширяющий область памяти под программу стоит третьим словом во второй строке. Конкретно там записано выделить 1440 мегабайт памяти. Число можно менять.

И вот беда. У меня на компьютере 8 Гб памяти, я прошу выделить 1.5 Гб, а программа не запускается. Чисто эмпирическим способом я обнаружил, что если закрыть все другие программы, то программа иногда запускается. Я решил, что надо еще больше очистить память. Это можно сделать, если убрать из списка автоматической загрузки кое какие программы, которые не очень нужны. Для этой цели я очень давно скачал программу с названием «StartupShow» с сайта http://www.nirsoft.net . Она мне долго служила верой и правдой.

Но в новой системе Виндовс 8.1 программа работает неадекватно. Она запускается, показывает все программы, включенные в список автозагрузки, но ни одна операция не выполняется. Все время пишет, что не может выполнить операцию. Это была первая проблема. И надо сказать, что решается она очень просто, да все лень что-то менять. Я уже давно с этим сталкиваюсь, и уже давно заходил на указанный сайт в поисках новой версии программы, но ее там больше нет. Зато есть другая программа, которая называется «WhatInStartup».

Так как мне стало очень надо я решил ее попробовать. И все замечательно. Она имеет точно такой же вид, но все операции выполняет, и можно заблокировать любую программу от автоматического запуска. Это очень важно, так как многие программы записывают себя в этот список автоматической загрузки и потом автоматически запускаются каждый раз при включении компьютера даже если совсем нет необходимости ими пользоваться. Ну и понятное дело, они занимают место в оперативной памяти компьютера. Но самое неприятное даже не это, а то, что компьютер очень долго включается.

Итак я исключил из списка некоторые программы, компьютер стал включаться быстрее, но проблема с JRE осталась. У нее оказался какой-то потолок в размере памяти, выше которого программа не запускается, выдавая ошибку. И надо сказать, что я никак не мог сообразить в чем дело. Обычно я не люблю у кого-то что-то спрашивать, я стараюсь сам сообразить или с помощью интернета. Но интернет в этом вопросе мне не смог помочь, я нигде не нашел обсуждение этой проблемы. Вполне возможно, что оно где-то есть, но надо правильно задать вопрос, а это сложно.

В конце концов я решил написать письмо одному человеку, адрес которого тоже нашел в интернете и знал, что он Java программист. Он мне ответил в том плане, что у него таких проблем нет, и что вероятно у меня стоит 32-битная версия JRE, что неправильно. И вот именно это и оказалось решением проблемы. Оказывается большая кнопка на сайте http://www.java.com/ru по умолчанию устанавливает 32-битную версию. А если хочешь 64-битную версию, то надо выходить на список всех версий, скачивать дистрибутив и устанавливать программу вручную, как и все другие программы.

И как только я установил новую 64-битную версию JRE 1.8.0_77 проблема сразу испарилась. И даже не надо закрывать другие программы. Это типичный пример того как плохо что-то делать не читая инструкций и доверяясь предложениям кликать кнопки и все делать за один клик. Сейчас такой метод широко используется, особенно на смартфонах. На любой писк предлагают скачать отдельное приложение, и с ним все так просто что и знать ничего не надо. Но ведь за все надо платить. Вот и я заплатил, потратив кучу времени на то, чтобы избавиться от такой практики, когда все делается автоматически.

Компьютер — проблемы и решения. Часть 1.: Один комментарий

  1. Да, многие люди не читают сейчас инструкции. Лень. И когда я говорю, что читаю не только инструкции к технике, но и лицензионные соглашения к программам и правила на форумах, они крутят у виска пальцем. Но это их личное дело. Зато я знаю, чего и от чего ждать и на что рассчитывать.
    А «все в один клик» — это, увы, на потребу публике везде. Спасибо, что пока еще есть варианты. Хотя в той же Вин10, кажется, для человека места уже не оставили…

    Нравится

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход /  Изменить )

Google photo

Для комментария используется ваша учётная запись Google. Выход /  Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход /  Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход /  Изменить )

Connecting to %s