Можно изменить гамма настройки (цвета и эффективно контрастировать также), использование xrandr
инструмент. Сначала определите выходное название своего монитора:
$ xrandr -q | grep connected
DFP1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 477mm x 268mm
CRT1 disconnected (normal left inverted right x axis y axis)
В вышеупомянутом примере мне подключили монитор и рассматриваемый как вывод DFP1. Таким образом, теперь для гамма примера модификации:
$ xrandr --output DFP1 --gamma 0.8:0.8:1.1
Где гамма значения находятся в формате Red:Green:Blue
.
Править: Другая опция xcalib
(Вы, возможно, должны установить его сначала). Это может использоваться с -a
параметр, чтобы иметь эффект непосредственно на подключенный монитор. Посмотрите вывод xcalib
для получения дополнительной информации. К сожалению, цвет/подборы яркости, кажется, работают аддитивным образом, таким образом, Вы, возможно, должны были бы сделать randr --output ... --gamma 1:1:1
восстановить состояние по умолчанию.
Время запуска JVM является довольно медленным, и подвергается тяжелому сбору на сценариях... огромная оптимизация для Java обрабатывает время запуска.
Другие ответы отвечают на вопрос относительно запуска универсального приложения, которые являются полезными соображениями.
Но кажется, что Вашим основным вопросом является ре выполнения запуска JAVA-приложения наверху запуска jvm. Это также было моим вопросом. Я нашел это:
Если желающий для принесения в жертву безопасности пользовательского разделения проверьте Nailgun, Безумно Быстрый Java:
Nailgun является клиентом, протоколом и сервером для того, чтобы запустить программы Java из командной строки, не подвергаясь запуску JVM наверху. Программы, запущенные в сервере (который реализован в Java), и, инициированы клиентом (записанный в C), который обрабатывает весь ввод-вывод.
Android использует единственный процесс Зиготы что ветвления для запущения нового приложения. Эта оптимизация возможна, потому что все приложения Android запускаются в той же среде; существует очень мало, чтобы сделать (главным образом устанавливает пользователя и загружают код приложения) запускать приложение. Эта оптимизация является эффективной, потому что существует мало, чтобы сделать, тем более, что процессу Зиготы уже связали библиотеки в.
В системе Unix не встречены предположения, которые лежат в основе Зиготы. Каждый процесс запускается со своих собственных переменных среды, своих собственных открытых файлов, своих собственных пределов использования, своего собственного пользователя и групп, и т.д. Вы не можете передать все это имущество от одного процесса до другого (можно передать некоторых, но даже затем это означало бы дополнительное время запуска). Кроме того, существует широкий спектр различных библиотек, пользовавшихся различными приложениями; каждое приложение должно было бы загрузить свое собственное. Подобная Зиготе оптимизация не возможна в целом и не, во многих случаях, действительно полезна, даже когда это возможно.
Можно записать программу Java, это - демон. Это - что-то, чем необходимо управлять на основе приложения приложением. Можно подать заявку, запускаются как демон и ветвление, когда это получает новый запрос. Вам решать, что сделать при разветвлении.
Любой процесс, включая программу Java, может работать как демон. Реальный вопрос состоит в том, если реализация Java имеет все системные вызовы для превращения его в "надлежащий процесс демона" (например, обработка сигналов, обработка группы сессии/процесса, и т.д.). Вы могли бы хотеть посмотреть на Демона Java API.
Кроме того, так как разветвление ОС будет, создавая копию под управлением программы, не будет никаких затрат на запуск, только стоимости создания нового процесса структуры данных в ОС. Выполнение последующего exec
может понести расходы запуска. Поточная обработка часто используется вместо разветвления для программ Java, так как уже существует стабильный API.
fork
работы являются и родительским процессом и дочерним процессом, сразу запускаются после fork
возвраты, единственная отличающаяся вещь (помимо pid/ppid и памяти) являются возвращаемым значением: 0 для ребенка и для родителя, pid ребенка JVM может вступить во владение для загрузки классов по мере необходимости. Это по существу, что Tomcat и другие контейнеры приложения делают (хотя через потоки). Это не различающее поведение демона, но нерестящегося процесса. Демон отсоединяется от любого терминального или вмешательства пользователя.
– Arcege
06.03.2012, 01:19
На самом деле серверы приложений как JBoss обеспечивают функциональность, подобную (но не то же как), что Вы просите: процесс Java работает в фоновом режиме, и можно дать этому команду запускать подприложение. Оборотная сторона этого подхода, однако, то, что подприложения не запускаются как отдельные процессы, таким образом, они безопасно не разделяются: если Вы разрушаете VM, или называете System.exit () или решаете прервать () все Потоки, все другие подприложения также затронуты.