LINUX.ORG.RU

Сообщения i3draven

 

Куча новых языков

Форум — Development

Вот не знал куда запостить. В последнее время просто целый зоопарк выкатили, старых то было много, так теперь молодняк уже десятками подрастает. Языков программирования все больше и больше. Вместе с тем, концепций немного, а ключевых слов появляется все больше. Возникла идея куда то сообщить о организации нового стандарта на ключевые слова по концепциям. Что бы очередные авторы языка смотрели стандарт и не изобретали очередное «abstract shared val». Достали уже драть концепции у соседей и изобретать свои названия.

 

i3draven
()

Контекстное меню в libreoffice косячит

Форум — Desktop

В libreoffice 4 меню стало появляться не сразу, он его как бы читает откуда то и потом показывает. Дико косячит, когда в контекстном меню должно быть одно, а он показывает другое или в верхнем тулбаре часть пунктов пропадает. Это новая фича с чтением содержимого меню откуда то или просто косяк?

i3draven
()

Прошивка для однокнопочного хотспота

Форум — Talks

Читал я тут это: Релиз DPI Carbon Reductor 4.0.3

И внезапно понял, ведь пока есть понятие «провайдер», будет и «контроль провайдера». Таким образом выгоднее всего использовать хотспоты и железки для их организации. Железок полно, вот бы были прошивки на них что бы включил и работает распределенная вайфай сеть...что бы любой юзер сумел, но, кто же такое напишет...вот бы это дело в ddwrt|openwrt включить...на этом мысль обрывается :)

i3draven
()

javafx (java 7 se) роняет X server!

Форум — Development

Надо мне было вывести график по данным из БД (mysql), просто что бы периодически заглядывать. БД на домашнем компе. Решил воспользвоаться для рисования графиков javafx, воткнув ее в Swing Frame. Дело не хитрое, поколупался и вывел. Но был сильно удивлен тем, что javafx на раз роняет X server в ubuntu! Вот весь код примера.

package sleep;

import java.awt.EventQueue;

import javafx.application.Platform;
import javafx.embed.swing.JFXPanel;
import javafx.scene.Group;
import javafx.scene.Node;
import javafx.scene.Scene;
import javafx.scene.chart.AreaChart;
import javafx.scene.chart.BarChart;
import javafx.scene.chart.CategoryAxis;
import javafx.scene.chart.LineChart;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.XYChart;
import javafx.scene.chart.XYChart.Series;
import javafx.scene.effect.Shadow;
import javafx.scene.paint.Color;
import javafx.scene.shape.Rectangle;
import javafx.scene.web.HTMLEditor;

import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

import java.awt.BorderLayout;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.logging.Logger;

import javax.swing.JButton;

import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

import javax.swing.BoxLayout;

import java.awt.Component;

import javax.swing.SwingConstants;

public class Graph {

	private JFrame frame;
	private static String uri;
	private final static double AVG_INDEX = 60;
	private String startTime, endTime;
	private JFXPanel jfxp;

	/**
	 * Launch the application.
	 */
	public static void main(String[] args) {
		try {
			Class.forName("com.mysql.jdbc.Driver");
			uri = "jdbc:mysql://localhost:3306/motion";
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			System.exit(1);
		}

		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					Graph window = new Graph();
					window.frame.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}

	/**
	 * Create the application.
	 */
	public Graph() {
		initialize();
	}

	/**
	 * Initialize the contents of the frame.
	 */
	private void initialize() {

		frame = new JFrame();
		frame.setBounds(100, 100, 450, 300);
		// frame.setSize(466, 300);
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

		JPanel panel = new JPanel();
		frame.getContentPane().add(panel, BorderLayout.SOUTH);
		panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));

		final JFXPanel jfx = new JFXPanel();
		jfx.setSize(560, 300);
		jfx.setLocation(10, 40);
		// defining the axes
		CategoryAxis xAxis = new CategoryAxis();
		NumberAxis yAxis = new NumberAxis();
		xAxis.setLabel("Число минут с начала замера");

		final AreaChart<String, Number> lineChart = new AreaChart<>(xAxis,
				yAxis);
		Series<String, Number> data = graph();
		Series<String, Number> derives = derives(data);
		lineChart.getData().add(data);
		lineChart.getData().add(derives);
		lineChart.setTitle("Начало замера: " + Graph.this.startTime
				+ " Завершение замера: " + endTime);

		Platform.runLater(new Runnable() {
			@Override
			public void run() {
				// creating the chart
				Scene scene = new Scene(lineChart, 400, 300);
				jfx.setScene(scene);
			}
		});

		JButton btnUpdate = new JButton("Update");
		btnUpdate.setHorizontalAlignment(SwingConstants.LEADING);
		btnUpdate.setAlignmentX(Component.CENTER_ALIGNMENT);
		btnUpdate.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				Platform.runLater(new Runnable() {
					@Override
					public void run() {
						lineChart.getData().clear();
						lineChart.getData().add(graph());
					}
				});
			}
		});
		panel.add(btnUpdate);

		JButton btnNewButton = new JButton("Truncate");
		btnNewButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				// TODO Auto-generated method stub
				try (Connection con = DriverManager.getConnection(uri, "root",
						"111"); Statement st = con.createStatement()) {
					st.execute("TRUNCATE TABLE motions");
				} catch (SQLException t) {
					// TODO Auto-generated catch block
					t.printStackTrace();
					System.exit(1);
				}
			}
		});
		btnNewButton.setAlignmentX(Component.CENTER_ALIGNMENT);
		panel.add(btnNewButton);

		frame.getContentPane().add(jfx, BorderLayout.CENTER);
	}

	private Series<String, Number> graph() {
		// EXAMPLE CODE START

		Series<String, Number> fluent = new XYChart.Series<>();
		fluent.setName("Движения");
		try (Connection con = DriverManager.getConnection(uri, "root",
				"111");
				Statement st = con.createStatement();
				ResultSet rs = st
						.executeQuery("SELECT time,UNIX_TIMESTAMP(time) as t,SECOND(time) as s,MINUTE(time) as m,pixels FROM motions ORDER BY time")) {
			int init = 0;
			int pixels = 0;
			double avg = 0;
			int lastSecond = 0;
			int second = 0;
			int lastMinute = 0;
			int minute = 0;

			while (rs.next()) {
				if (init == 0) {
					init = rs.getInt("t");
					startTime = rs.getString("time");
				}
				second = rs.getInt("s");
				pixels = rs.getInt("pixels");
				avg = Math.max(avg, pixels);
				if (lastSecond != second) {
					minute = rs.getInt("m");
					if (lastMinute != minute) {
						double elapsedTime = rs.getInt("t") - init;
						elapsedTime /= AVG_INDEX;
						XYChart.Data<String, Number> data = new XYChart.Data<String, Number>(
								Integer.toString((int) Math.floor(elapsedTime)),
								avg);

						Rectangle r = new Rectangle();
						r.setWidth(5);
						r.setHeight(5);
						r.setArcWidth(2);
						r.setArcHeight(2);
						r.setFill(Color.BLUE);
						data.setNode(r);

						fluent.getData().add(data);
						avg = 0;
						lastMinute = minute;
						endTime = rs.getString("time");
					}
					lastSecond = second;
				}
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			System.exit(1);
		}

		return fluent;
	}

	private Series<String, Number> derives(Series<String, Number> series) {
		Series<String, Number> derive = new XYChart.Series<>();
		derive.setName("Производные");

		int last = 0;
		for (XYChart.Data element : series.getData()) {
			XYChart.Data<String, Number> data = new XYChart.Data<String, Number>(
					String.valueOf((int) element.getXValue()),
					(int) element.getYValue());

			derive.getData().add(data);
		}
		return derive;
	}
}

Причем происходит это в самые разные моменты. Например было, что в свинговой кнопке, код слушателя обращался к БД выполняя запрос и иксы падали! И еще множество вариантов. Пробовал ставить дрова от нвидии 325 и 304, в обоих случаях результат один, сегфолты типа:

202.491] (EE)
[   202.491] (EE) Backtrace:
[   202.491] (EE) 0: /usr/bin/X (xorg_backtrace+0x36) [0x7f4a84853516]
[   202.491] (EE) 1: /usr/bin/X (0x7f4a846a3000+0x1b4359) [0x7f4a84857359]
[   202.491] (EE) 2: /lib/x86_64-linux-gnu/libpthread.so.0 (0x7f4a837a6000+0xfbd0) [0x7f4a837b5bd0]
[   202.491] (EE) 3: /usr/lib/x86_64-linux-gnu/libpixman-1.so.0 (pixman_region_intersect+0x24) [0x7f4a83358034]
[   202.491] (EE) 4: /usr/lib/xorg/modules/drivers/intel_drv.so (0x7f4a80f37000+0x5667f) [0x7f4a80f8d67f]
[   202.491] (EE) 5: /usr/bin/X (0x7f4a846a3000+0x132d35) [0x7f4a847d5d35]
[   202.491] (EE) 6: /usr/bin/X (0x7f4a846a3000+0x58af1) [0x7f4a846fbaf1]
[   202.491] (EE) 7: /usr/bin/X (0x7f4a846a3000+0x475aa) [0x7f4a846ea5aa]
[   202.491] (EE) 8: /lib/x86_64-linux-gnu/libc.so.6 (__libc_start_main+0xf5) [0x7f4a823f2ea5]
[   202.491] (EE) 9: /usr/bin/X (0x7f4a846a3000+0x478f1) [0x7f4a846ea8f1]
[   202.491] (EE)
[   202.491] (EE) Segmentation fault at address 0x29
[   202.491]
Fatal server error:
[   202.491] Caught signal 11 (Segmentation fault). Server aborting
[   202.491]
[   202.491] (EE)
Please consult the The X.Org Foundation support
     at http://wiki.x.org
for help. 

Ядро 3.11 и 3.10 оба на х64 ОС ubuntu 13.04 Ява из репов. Код примера не дописан, но этот код при запуске стабильно роняет иксы у меня. Были и другие варианты падений.

Вот такие пироги.

 , , , ,

i3draven
()

Подскажите где скачать Dojo. Подробное руководство

Форум — Web-development

Хочется изучить тулкит, а лучше это делать с книги...на мой вкус. Никак не найду ее электронный вариант...хорошо копирасты работают :) В общем сабж и спасибо. Если есть такое, присылайте на почту 3draven на gmail

i3draven
()

Холиварное предчувствие

Форум — Talks

Здравствуйте. Пару дней назад сподобился почитать новости о развитии линуксов и как то прокрадывается предчувствие, что вендекапца не предвидится (он мне и не надо), а вот линукскапец (само слово ново для мени!) вроде как замаячил. Федора воеваит с убунтой за десктопы, нвидиа дрова в проприетаре оставляет, победное шествие не происходит никак, все кому не лень начинают клепать собственные ОС и эти ОС поодерживаются миллиардами нефти, вроде как маячит ветвление дистров на «виндалинукс-убунту» и «православный» «редхатлинукс-федора» и т.д. и т.п. Даже гном вроде как помирает и разрабов в нем почти не осталось, а UEFI делается через мелкомягких. В общем ад и израиль, разброд и шатание, даже на форумах. Не в плане холивар, вопрос прост. Обычно я за новостями не слежу, а тут прям расстроился...как у вас с предчувствиями? Революция с внедрением кучи новых плюшек (weyland,systemd,journald и прочие d) или полный провал всего под землю снова?

i3draven
()

Какой планировщик процессов подходит для 4-х ядерного i7?

Форум — General

Здравствуйте. В новом ноуте стоит i7 с четырмя ядрами и гипертрейдингом. Хочется планировщик процессов который бы распределял потоки ровным слоем масла по бутерброду, сейчас наблюдаю гружение одного ядра и все, а уж потом елси его на 100% грузанули, то остальные. Надо что бы очередной поток сразу автоматом пускался на следующем ядре. Подскажите куда копать. Заранее спасибо.

i3draven
()

Настройка кэша для 8Гб Озу

Форум — General

Здравствйте. Купил я себе ноутбук с 8Гб Озу. Хочется теперь поиметь ускорение работы и полностью задействовать ресурс. Так как в ноуте есть батарея то выключение электричества не играет роли, значит надо в Озу хранить максимум всего. Например я периодически работаю с небольшими БД, где то около 1Гб размером. Хочется что бы они автоматом в кэш сливались и работа шла оттеда, но пока вижу, что диск пашет очень активно (SQLite). Есть ли какие то настройки кеша подходящие к вопросу? Рамдиск не подходит так как БД придется лить в Озу ручками, есть ли что то другое?

i3draven
()

Как сделать подстановку сложной команды в bash?

Форум — General

Есть команда для объединения нескольких postscript в один

psmerge -oout-all.ps список_фалов
Хочется список фалов сделать на основе команды
ls -mv in.ps.*.imposed|tr "\n" " "|tr "," " "
Список эта зараза выдает, но если написать так
psmerge -oout-all.ps `ls -mv in.ps.*.imposed|tr "\n" " "|tr "," " "`
то не работает. Объясните пожалуйста почему? Заранее спасибо.

 , psmerge,

i3draven
()

Установка драйвера для GeForce FX на kernel 2.6.17.3...да куда угодно :)

Форум — Linux-hardware

Здравствуйте. Есть задача: поставить дрова на видеокарту. Пробовал разные ядра и разные дрова...не ставится. Выдает одну и туже ошибку...в дровах начиная с 71 версии. Исходные данные: 0. видеокарта GeForce FX 5200 1. ядро 2.6.17.3 (собрано из исходников.../usr/src/linux)...рядом стоит 2.4 2. дистр debian 3.1rc1 3. дрова NVIDIA-LINUX-X86_32-10-817.RUN (но на других тоже) 4. ошибка (приведу весь конец лога):

/tmp/selfgz7036/NVIDIA-Linux-x86-1.0-8174-pkg1/usr/src/nv/nv-linux.h:677:2: warning: #warning "conftest.sh failed, assuming remap_page_range(4)!" /tmp/selfgz7036/NVIDIA-Linux-x86-1.0-8174-pkg1/usr/src/nv/os-interface.c: In function `os_set_mlock_capability': /tmp/selfgz7036/NVIDIA-Linux-x86-1.0-8174-pkg1/usr/src/nv/os-interface.c:137 5: error: structure has no member named `rlim'

Я пробовал править доступные исходники...откомпилил, но не запахало насколько я понимаю, интерфейс ядра в модуле предполагался для версии 2.4, а реально было ядро 2.6. Но это на 71 дровах...на этих ничего не правил.

Очень прошу помощи ! Задолбался уже. Стандартные дрова 3Д графику не тянут, сижу на них уже три месяца ! Заранее спасибо.

i3draven
()

вопрос по R-project

Форум — Development

Стою перед выбором matlab R-project. Кто знаком с сабжем, подскажите, моделирование нейронных сетей на R-Project возможно ? Насколько он схож по функциональности с matlab ? Есть ли удобные среды разработки для него ? Вообще можно ли сравнивать эти два пакета ? И что выбрать собственно, однажды я писал "научный" софт на С++, та проблем была куча, все вручную и т.д. Вобщем помогите пожалуйста и заранее спасибо.

i3draven
()

плохо работает irda+телефон

Форум — Linux-hardware

Здравствуйте. Описываю проблему. Есть ик порт Tekram Ir Mate 210 вроде так. Есть Ericsson r520m телефон. Все это в виндовсе позволяет выйти в интернет через gprs на скорости 115200. Реальная скорость вроде 38400, у нас mts ограничивает все 4 классом, но это не важно. В линуксе. debian 3.1 rc0 Я поставил irda-utils, версию не помню (я ща в винде через gprs, так что смотреть негде, но все это в дистр входило), собрал ядро 2.6.16.14. Все модули нужные загрузил. Телефон нашелся и в /proc/net/irda/discovery он показался. (там R520 есть). Появилось устройство irda0 (сетевой интерфейс рядом с lo). Появились /dev/ircomm0. Это все работает и соединяется с провайдером, вобщем полный шоколад :) Но все это работает на скорости 9600 ! Приходится ставить в /proc/sys/net/irda/max_baud_rate 9600. Иначе не работает. Как повысить скорость ? На такой скорости ни одна страница в броузере не открывается, работает только nslookup, но от ip адресов серверов, мне толку мало :) Заранее спасибо за ответ.

i3draven
()

Не собирается Eclipse 3.1

Форум — Development

Собственно сабж. linux-debian 3.1 rc0 Eclipse 3.1 ant 1.6.5 java 1.4 с копейками. собирает ecj.jar а на второй части сборки компилятора выдает ошибку. Причем совершенно непонятную, утверждает что нет каких то классов, хотя в исходниках они должны быть. Вобщем может кто сталкивался ?

i3draven
()

RSS подписка на новые темы