Board.KolibriOS.org

Official KolibriOS board
It is currently Wed Sep 18, 2019 2:54 pm

All times are UTC+03:00




Post new topic  Reply to topic  [ 115 posts ]  Go to page Previous 14 5 6 7 8 Next
Author Message
PostPosted: Thu Jun 20, 2013 10:28 pm 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
0CodErr wrote:
С поиском понятно. Кроме "sys" можно примонтировать, например, "rd" или "hd0".

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

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Top
   
PostPosted: Fri Jun 28, 2013 10:46 am 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
SVN r. 3724 - уменьшение эффекта блокировки файловой системы за счет добавления mcall 68,1

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Top
   
PostPosted: Fri Jun 28, 2013 10:53 am 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
По мотивам требований отдельных трудящихся есть идея доработать функцию до следующего функционала.
1) Получить таблицу со всеми входами.
2) Добавить между указанными слотами новый слот (сдвинуть нижележащие данные на одну позицию вниз) и соответственно увеличить указатель количества входов.
3) Удалить указанный слот (сдвинуть нижележащие данные на одну позицию вверх) и соответственно уменьшить указатель количества входов.
Флаг блокировки естественно придется похерить.

Также еще нужно использовать мьютексы вместо CLI.

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Top
   
PostPosted: Fri Jun 28, 2013 12:26 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Mario_r4
Больше костылей, хороших и разных ?
Делай тогда двусвязный список. Проще будет манипулировать.


Top
   
PostPosted: Fri Jun 28, 2013 3:28 pm 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
Serge wrote:
Mario_r4
Больше костылей, хороших и разных ?
Делай тогда двусвязный список. Проще будет манипулировать.

Не, ну я могу вообще не делать. Мне лично оно не нужно. А вообще... помнишь мы с тобой все еще обсуждаем вероятность реализации буфера обмена, года три уже. Вот как то так.

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Top
   
PostPosted: Mon Jul 08, 2013 10:19 am 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Mario_r4
А можно, пока ещё не слишком поздно, заменить /addappl на /KolibriOS ?
Будут KolibriOS на диске и виртуальный каталог.


Top
   
PostPosted: Mon Jul 08, 2013 10:29 am 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
Serge
Не знаю чем продиктовано такое желание, но я не возражаю - меняй.
Также требуется менять скрипты автосборки и menu.dat

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Top
   
PostPosted: Mon Jul 08, 2013 10:44 am 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Mario_r4
addappl как-то глаз режет.
Ок, меняю.


Top
   
PostPosted: Mon Jul 08, 2013 10:55 am 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
Заменяй лучше на имя в нижнем регистре, т.е. /kolibrios, чтобы было меньше проблем с фс чувствительными к регистру.
Также перед заливкой на SVN так стоит подумать насчет наличия коллизий, т.к. имена одинаковые. Хотя теоретически проблем быть не должно.

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Top
   
PostPosted: Mon Jul 08, 2013 11:22 am 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Mario_r4
Quote:
Заменяй лучше на имя в нижнем регистре

Поздно.
Imho все имена точек монтирования типа /rd/1 /hd0/1 /bd0/1 и т.д должны быть нечувствительны к регистру. это сильно упростит жизнь. На самом разделе, как файловой системе угодно.


Top
   
PostPosted: Mon Jul 08, 2013 1:06 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Странно. Если монтировать как /KolibriOS, то не работает, а если /kolibrios, то работает. При этом в ассоциациях написано KolibriOS .


Top
   
PostPosted: Mon Sep 02, 2013 12:42 am 
Offline
Designer
User avatar

Joined: Thu Jan 25, 2007 3:33 pm
Posts: 5061
Есть пара предложений:
1 вариант (простой): если SEARCHAP запустили с параметром, например /hd0/2/kolibri/, то программа монтирует параметр запуска как /KolibriOS и ничего не ищет

2 вариант (продвинутый):
- программа запущена с параметром -auto - автоматический поиск разделов
- любой другой параметр, который начинается со слеша / - установить папку как /KolibriOS
- запуск без параметра или с непонятным - открывается GUI. В окне - кнопка автоматический поиск и кнопка обзор берез OpenDialog для задания папки вручную.

_________________
Через тернии к звездам


Top
   
PostPosted: Mon Sep 02, 2013 1:31 am 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
Программа ведь не с потолка в названии содержит слово SEARCH - задавая заранее определенный путь надо быть заранее уверенным, что такой путь существует.

З.Ы. Поскольку моя идея была названа очередным "костылем", то я не хочу ее развивать дальше. Кому нужно пусть тот и допиливает или делает более идеальный вариант с пони и бабочками. Мне лично более того что есть не нужно.

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Top
   
PostPosted: Mon Sep 16, 2013 11:47 pm 
Offline
Designer
User avatar

Joined: Thu Jan 25, 2007 3:33 pm
Posts: 5061
Я правильно использую функцию 30.3? Что-то не работает.
Code:
struct sysdir
{
   char name[64];
   char path[64];
} sysdir;

inline fastcall int SetAddApplDir( ECX)
{
   $mov eax, 30
   $mov ebx, 3
   $int 0x40
}

void KosFol(){
   strcpy(#sysdir.name,"kolibrios");
   strcpy(#sysdir.path,"/sys");
   SetAddApplDir(#sysdir);
   RunProgram("/kolibrios/calc","");
}

_________________
Через тернии к звездам


Top
   
PostPosted: Mon Sep 16, 2013 11:56 pm 
Offline
Kernel Developer

Joined: Sun Feb 10, 2013 12:37 pm
Posts: 2329
Автомонтирование дополнительного раздела с приложениями
Mario_r4 wrote:
SVN r. 3663 - в ядро добавлена ф.30.3, для монтирования дополнительного системного каталога. Можно вызвать только один раз за сеанс (блокировка предусмотрена) и используется для программы SEARCHAP (залита в SVN r. 3650).

Прежде чем спрашивать "Нафига?" нужно прочитать целевую тему. Также предлагаю дальнейшие сообщения писать в целевой теме.

Теперь собственно по использованию - документацию надо читать внимательно:
Spoiler: Show
---- Подфункция 3 - установить доп. системную директорию для ядра ----
Code:
Параметры:
  * eax = 30 - номер функции
  * ebx = 3 - номер подфункции
  * ecx = указатель на блок данных:
          sysdir_name     rb 64
          sysdir_path     rb 64
Пример:
dir_name1       db 'KolibriOS',0
                rb 64-8
dir_path1       db 'HD0/1',0
                rb 64-6
Возвращаемое значение:
  * функция не возвращает значения
Замечания:
  * Функция может быть вызвана только 1 раз за 1 сессию работы ОС.

Погляди внимательно и ты увидишь свою ошибку.
Подсказка:
Spoiler: Show
проблема в sysdir.path

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 115 posts ]  Go to page Previous 14 5 6 7 8 Next

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Limited