Да, Линух рулит!

Форум для линуксоидов

Moderator: Shaos

User avatar
HeLLBoY
Writer
Posts: 19
Joined: 19 Apr 2003 08:55

Post by HeLLBoY »

Да, Линух рулит!
User avatar
Shaos
Admin
Posts: 24890
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

HeLLBoY wrote:Да, Линух рулит!
Вскоре я размещу здесь свои доводы в пользу того, что линукс лучше всех, а именно несколько правдивых историй о том, что в линукс делать можно то, что нельзя в виндовз ни при каких условиях :)
User avatar
HeLLBoY
Writer
Posts: 19
Joined: 19 Apr 2003 08:55

Post by HeLLBoY »

Да тут ваще муть какая-то с кодировкой...
Каждый раз надо выставлять ср1251 а то броузер норовит какую-то левую выставить :(
я в дефалтной написал а потом долго угарал - хз ваще чё за :rotate:
User avatar
HeLLBoY
Writer
Posts: 19
Joined: 19 Apr 2003 08:55

Post by HeLLBoY »

всё разобрался с кодировкой :kruto:
joogorden
Junior
Posts: 7
Joined: 13 Mar 2013 08:37
Location: 193.232.54.1

Re:

Post by joogorden »

Shaos wrote:
HeLLBoY wrote:Да, Линух рулит!
Вскоре я размещу здесь свои доводы в пользу того, что линукс лучше всех, а именно несколько правдивых историй о том, что в линукс делать можно то, что нельзя в виндовз ни при каких условиях :)

Как то затянулось это в скоре :D
User avatar
askfind
Devil
Posts: 892
Joined: 04 Jan 2016 09:15
Location: Russia, S.- Peterburg

Re: Да, Линух рулит!

Post by askfind »

Пользователь os linux с 1997 года.

Сейчас:
- На работе: Ubuntu 20.04, Mint 18; embedded OpenWRT.
- Дома: ноутбук (3 шт.) Ubuntu 15/18; роутеры (2 шт.) OpenWRT, LEDE; системный блок (2 шт.) Ubuntu 16, Linux Windows FX 10; Opange Pi Iot (2 шт.) Ubuntu Server; Mac mini (2 шт.) вторая ось Ubuntu 16.

Есть, конечно же, замечания. В целом - система развивается, ставится на очень разнообразное "железо". Драйвера "из коробки" работают с железом.

Есть Windows 7/10 имеются лицензионные. Стараюсь как можно реже запускать. Есть программы только для этих операционных систем.

Одна из замечательных операционных систем в 2000 году было операционная 64-разрядная система BeOS 5.0. Звук, видео, отзывчивость, отличная параллельная работа приложений. Например, проигрывание одновременно 30 файлов mp3, двух video без артефактов. Можно было спокойно набирать текст.
You do not have the required permissions to view the files attached to this post.
"Ученье свет, а неученье — тьма. Дело мастера боится, и коль крестьянин не умеет сохою владеть — хлеб не родится." (С)
User avatar
Lavr
Supreme God
Posts: 16858
Joined: 21 Oct 2009 08:08
Location: Россия

Re: Да, Линух рулит!

Post by Lavr »

askfind wrote:Одна из замечательных операционных систем в 2000 году было операционная 64-разрядная система BeOS 5.0. Звук, видео, отзывчивость, отличная параллельная работа приложений. Например, проигрывание одновременно 30 файлов mp3, двух video без артефактов. Можно было спокойно набирать текст.
A на каком железе всё это счастье? Иначе это голословно... :wink:

По собственному опыту - с самого начала появления Венды 95, а затем - Венды 98 на мой нищебродский
десктоп: P166, 16M RAM, 1G HDD они ставились великолепно и уж два муз.файла одновременно играли
без проблем - больше не пробовал.

А для Линуха это железо было слабовато - по мнению самих же линуксоидов.
iLavr
User avatar
askfind
Devil
Posts: 892
Joined: 04 Jan 2016 09:15
Location: Russia, S.- Peterburg

Re: Да, Линух рулит!

Post by askfind »

Lavr wrote:
askfind wrote:Одна из замечательных операционных систем в 2000 году было операционная 64-разрядная система BeOS 5.0. Звук, видео, отзывчивость, отличная параллельная работа приложений. Например, проигрывание одновременно 30 файлов mp3, двух video без артефактов. Можно было спокойно набирать текст.
A на каком железе всё это счастье? Иначе это голословно... :wink:

По собственному опыту - с самого начала появления Венды 95, а затем - Венды 98 на мой нищебродский десктоп: P166, 16M RAM, 1G HDD они ставились великолепно и уж два муз.файла одновременно играли без проблем - больше не пробовал.
p-200, 32M RAM, 500M HDD.

"Ученье свет, а неученье — тьма. Дело мастера боится, и коль крестьянин не умеет сохою владеть — хлеб не родится." (С)
User avatar
Lavr
Supreme God
Posts: 16858
Joined: 21 Oct 2009 08:08
Location: Россия

Re: Да, Линух рулит!

Post by Lavr »

askfind wrote:
Lavr wrote:A на каком железе всё это счастье? Иначе это голословно... :wink:
p-200, 32M RAM, 500M HDD.
Ну 32M RAM - неплохо... а у меня всего 16M ОЗУ было.
iLavr
User avatar
Shaos
Admin
Posts: 24890
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Да, Линух рулит!

Post by Shaos »

Я в Екатеринбурге когда жил в съёмной квартире (2000-2004), пускал Линух с ядром 2.0 (урезанная слака) на 486DX2-80 с 12 Мб памяти - чаще чисто текст, но иногда голые иксы пускал поверх тоже с каким-то минимальным виндо-менеджером

P.S. По поводу "правдивых историй" - были они, но в разных топиках - найду прицеплю

P.P.S. Вот пока чего нашёл:
Правдивая история про модем - 24 сентября 2003
User avatar
Lavr
Supreme God
Posts: 16858
Joined: 21 Oct 2009 08:08
Location: Россия

Re: Да, Линух рулит!

Post by Lavr »

Shaos wrote:Я в Екатеринбурге когда жил в съёмной квартире (2000-2004), пускал Линух с ядром 2.0 (урезанная слака) на 486DX2-80 с 12 Мб памяти - чаще чисто текст, но иногда голые иксы пускал поверх тоже с каким-то минимальным виндо-менеджером...
Это может быть. Просто когда у меня был десктоп описанной выше кофигурации, и лез я в Интернет
модемом на 9600, все очень ругали Венду 95/98 и хотели никсов с тем же функционалом.
Но по всем никсовским источникам памяти надо было больше.

Хотя... не обязательно никсов... на словах ещё была "полуось" - но я её ни у кого не видел.

Время спустя ответственно скажу: Венда 95/98 у них перацкая была, потому как когда у меня
в первый раз рухнул HDD, но я спас всю инфу, я из чистого интересу уничтожал Венду-98 руками!
Убивал файлы системные, делал прочие гадости... и я был очень удивлён, сколь много у Венды-98
механизмов самосохранения! :roll:

Ну разве что format /C: - так против лома нет приёма! Я так и оставил ту Венду на полуразрушенном HDD.
И дважды она мне уже пригодилась! :roll:
iLavr
User avatar
Shaos
Admin
Posts: 24890
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Да, Линух рулит!

Post by Shaos »

с полуосью версии 3 я игрался пару месяцев в 1997 чтоли году на пентиуме-60 - она вроде ещё больше памяти требовала чем 95я, тормозила, не всё пускало и т.д. - в итоге снесли полуось и поставили 95ю :)
Электромонтёр
Fanat
Posts: 96
Joined: 23 Feb 2018 22:20

Видеопамять как своп?

Post by Электромонтёр »

Уважаемые спецы по Линуху!

Как использовать физическую память по заданному адресу / объёму как рамдиск? Интересует для микрокомпьютера

Разработчик советовал драйвер phram, но родная прошивка скомпилена без поддержки модулей ядра и сам драйвер 2004 года использует древние заголовочные файлы под х86, последнее упоминание phram я нашёл в 2015 под ядро 2.6, а микрокомп на арме и ядро у него 3.1

З.Ы. Попытался русскую локаль поставить - потребление памяти дошло до 67%, далее - килл процесс. Иксы столько памяти не жрали, если честно. Почему русские буквы при установке столько памяти жрать должны - для меня загадка.
You do not have the required permissions to view the files attached to this post.
Last edited by Электромонтёр on 08 Oct 2020 06:07, edited 1 time in total.
User avatar
Shaos
Admin
Posts: 24890
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Да, Линух рулит!

Post by Shaos »

Линух на мелкоконтроллерах это совсем другое - надо к авторам железяки обращаться
User avatar
Shaos
Admin
Posts: 24890
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Да, Линух рулит!

Post by Shaos »

Shaos wrote:Линух на мелкоконтроллерах это совсем другое - надо к авторам железяки обращаться
Вот например как в физическую память по адресу можно лазить в Petalinux для Zynq (ARM+FPGA):

 peek.c

Code: Select all

/*
* peek utility - for those who remember the good old days!
*
*
* Copyright (C) 2013 - 2016  Xilinx, Inc.  All rights reserved.
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without restriction,
* including without limitation the rights to use, copy, modify, merge,
* publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included
* in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
* IN NO EVENT SHALL XILINX  BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* Except as contained in this notice, the name of the Xilinx shall not be used
* in advertising or otherwise to promote the sale, use or other dealings in this
* Software without prior written authorization from Xilinx.
*
*/

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/mman.h>
#include <fcntl.h>

void usage(char *prog)
{
	printf("usage: %s ADDR\n",prog);
	printf("\n");
	printf("ADDR may be specified as hex values\n");
}


int main(int argc, char *argv[])
{
	int fd;
	void *ptr;
	unsigned addr, page_addr, page_offset;
	unsigned page_size=sysconf(_SC_PAGESIZE);

	if(argc!=2) {
		usage(argv[0]);
		exit(-1);
	}

	fd=open("/dev/mem",O_RDONLY);
	if(fd<1) {
		perror(argv[0]);
		exit(-1);
	}

	addr=strtoul(argv[1],NULL,0);
	page_addr=(addr & ~(page_size-1));
	page_offset=addr-page_addr;

	ptr=mmap(NULL,page_size,PROT_READ,MAP_SHARED,fd,(addr & ~(page_size-1)));
	if((int)ptr==-1) {
		perror(argv[0]);
		exit(-1);
	}

	printf("0x%08x\n",*((unsigned *)(ptr+page_offset)));
	return 0;
}

 poke.c

Code: Select all

/*
* poke utility - for those who remember the good old days!
*

* Copyright (C) 2013 - 2016  Xilinx, Inc.  All rights reserved.
*
* Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without restriction,
* including without limitation the rights to use, copy, modify, merge,
* publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included
* in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
* IN NO EVENT SHALL XILINX  BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* Except as contained in this notice, the name of the Xilinx shall not be used
* in advertising or otherwise to promote the sale, use or other dealings in this
* Software without prior written authorization from Xilinx.
*
*/

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/mman.h>
#include <fcntl.h>

void usage(char *prog)
{
	printf("usage: %s ADDR VAL\n",prog);
	printf("\n");
	printf("ADDR and VAL may be specified as hex values\n");
}

int main(int argc, char *argv[])
{
	int fd;
	void *ptr;
	unsigned val;
	unsigned addr, page_addr, page_offset;
	unsigned page_size=sysconf(_SC_PAGESIZE);

	fd=open("/dev/mem",O_RDWR);
	if(fd<1) {
		perror(argv[0]);
		exit(-1);
	}

	if(argc!=3) {
		usage(argv[0]);
		exit(-1);
	}

	addr=strtoul(argv[1],NULL,0);
	val=strtoul(argv[2],NULL,0);

	page_addr=(addr & ~(page_size-1));
	page_offset=addr-page_addr;

	ptr=mmap(NULL,page_size,PROT_READ|PROT_WRITE,MAP_SHARED,fd,(addr & ~(page_size-1)));
	if((int)ptr==-1) {
		perror(argv[0]);
		exit(-1);
	}

	*((unsigned *)(ptr+page_offset))=val;
	return 0;
}

т.е. всё делается через устройство доступа к памяти /dev/mem