OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Суббота, 20 Апрель, 2024 17:22

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 40 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Четверг, 13 Апрель, 2006 10:15 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
FromOGU писал(а):
Зачем же так извращаться? Можно просто
SendMessage(..,..,..,(LPARAM)YourString);


Это на каком языке?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Четверг, 13 Апрель, 2006 15:35 

Зарегистрирован: Вторник, 11 Апрель, 2006 19:46
Сообщения: 12
Сергей Губанов писал(а):
Это на каком языке?


На языке Си


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пятница, 14 Апрель, 2006 12:22 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 18:38
Сообщения: 1857
FromOGU писал(а):
На языке Си


BB - "вещь в себе". Со своими плюсами и минусами. В частности, все что касается взаимодействия с внешней средой - делается через одно место.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пятница, 14 Апрель, 2006 12:57 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
Vlad писал(а):
все что касается взаимодействия с внешней средой - делается через одно место.

Ну, какова внешняя среда, таково и место... :D


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пятница, 14 Апрель, 2006 14:30 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Цитата:
В частности, все что касается взаимодействия с внешней средой - делается через одно место.


Кто виноват, что весь WinAPI построен процедурно и крайне неабстрактно, практически требует нарушения типизации (частая передача через один и тот же параметр всего на свете)? Неужели к 95 году мелкософту было сложно напрячь мозги, чтобы понять, что такой WinAPI устарел еще до момента своего создания?

Те же сервисы, дступные через COM, достаются в ББ уже вполне через "то место", по крайней мере, не хуже, чем в Дельфе (а там это было всегда лучше, чем в VC и BCB).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пятница, 14 Апрель, 2006 14:59 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 18:38
Сообщения: 1857
Илья Ермаков писал(а):
Кто виноват, что весь WinAPI построен процедурно и крайне неабстрактно,


WinAPI вполне себе ОО. Во всяком случае для начала 90-х.

Илья Ермаков писал(а):
практически требует нарушения типизации (частая передача через один и тот же параметр всего на свете)?


Это особенность сишного интерфейса. Ну нету там абстрактных типов, есть только void *. Явных нарушений типизации в терминах С (когда вместо одной сущности подсовывается совершенно другая) там не так уж много.

Илья Ермаков писал(а):
Неужели к 95 году мелкософту было сложно напрячь мозги, чтобы понять, что такой WinAPI устарел еще до момента своего создания?


WinAPI создавался еще до Win95 и еще переживет Висту. Любимая оберонщиками неизменность интерфейса модулей в действии.

Илья Ермаков писал(а):
Те же сервисы, дступные через COM, достаются в ББ уже вполне через "то место",


Конечно. В COM понятие абстрактного интерфейса уже есть.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пятница, 14 Апрель, 2006 16:04 

Зарегистрирован: Вторник, 11 Апрель, 2006 19:46
Сообщения: 12
Илья Ермаков писал(а):
Неужели к 95 году мелкософту было сложно напрячь мозги, чтобы понять, что такой WinAPI устарел еще до момента своего создания?


Кстати назовите мне хоть один API которые походит на звание "абстрактного". Про ОС юникс вы можете тоже сказать "устаревший интерфейс"? И у windows и у linux диспетчеризация системых вызовов в корне похожа ( в win - int 2eh - вызов системного сервиса, в unix - inx 80h). Может minix Эндрю Таненбаума? Нет. Linux пошел от Minix. Более того все это запудривание мозгов типа - "абстракция" и "уборка мусора" и etc. придумана для ленивых программистов, которые пытаются убежать от истины. А истина она одна - нет типов данных, есть память где все данные храняться в куче. Да и более того ваша строгая типизация прибавляет сложности при реализации специфических задач.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пятница, 14 Апрель, 2006 18:44 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 18:38
Сообщения: 1857
FromOGU писал(а):
Кстати назовите мне хоть один API которые походит на звание "абстрактного".


void *api(void *);

FromOGU писал(а):
"уборка мусора" и etc. придумана для ленивых программистов,


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

FromOGU писал(а):
которые пытаются убежать от истины. А истина она одна - нет типов данных, есть память где все данные храняться в куче.


Чем эта истина помогает в решении прикладных задач?

FromOGU писал(а):
Да и более того ваша строгая типизация прибавляет сложности при реализации специфических задач.


Такие специфичные задачи не стоит решать на строготипизированных языках.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пятница, 14 Апрель, 2006 19:40 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Цитата:
Более того все это запудривание мозгов типа - "абстракция" и "уборка мусора" и etc. придумана для ленивых программистов, которые пытаются убежать от истины. А истина она одна - нет типов данных, есть память где все данные храняться в куче.


При всем уважении к низкоуровщикам и писателям драйверов... Попробуйте реализовать без асбтракций и типизации мало-мальски крупный проект. Ну, хотя бы строк тысяч в 20... А потом несколько лет его развивать и соспровождать. Люди на этом форуме (Влад, Губанов) несколько лет работают над промышленными проектами гораздо больших размеров. Да и мои коды на ББ за полгода уже эту границу перескочили. А вы, работая в специфической области низкоуровневых трюков, не стесняетесь вещать "о вселенских вещах со вселенской же самоуверенностью" (С) Булгаков.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пятница, 14 Апрель, 2006 20:15 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
"А истина она одна - нет типов данных, есть память где все данные храняться в куче."

Другие истины:

Нет текста в книге, а есть бумага, на которой наплеваны кусочки краски.

Нет слов, а есть упругие продольные волны в воздушном пространстве.

И вообще - "ложки нет".... :-)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Понедельник, 17 Апрель, 2006 12:24 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
FromOGU писал(а):
Кстати назовите мне хоть один API которые походит на звание "абстрактного".

API самого Blackbox как системы.

FromOGU писал(а):
Про ОС юникс вы можете тоже сказать "устаревший интерфейс"?

Да. Вне всяких сомнений.

FromOGU писал(а):
придумана для ленивых программистов

Вы заблуждаетесь.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Понедельник, 17 Апрель, 2006 12:31 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
Илья Ермаков писал(а):
И вообще - "ложки нет".... :-)

Однажды слышал следующую историю.
Какой-то западный учёный долго мучил одного буддистского монаха вопросом в чём же смысл его религии, только кратко. Монах отвечал, что учёный не поймет его краткого ответа. Учёный настаивал. В конце-концов монах сдался и сказал: "Тебя реально не существует".


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Понедельник, 17 Апрель, 2006 13:34 

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 18:08
Сообщения: 76
А откуда эта история?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Понедельник, 17 Апрель, 2006 14:00 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
Cardinal писал(а):
А откуда эта история?

Из телевизора... :D


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Понедельник, 17 Апрель, 2006 14:44 

Зарегистрирован: Вторник, 11 Апрель, 2006 19:46
Сообщения: 12
Сергей Губанов писал(а):
FromOGU писал(а):
Про ОС юникс вы можете тоже сказать "устаревший интерфейс"?

Да. Вне всяких сомнений.

FromOGU писал(а):
придумана для ленивых программистов

Вы заблуждаетесь.

[/quote]
Вы не поняли меня правильно. В контексте данного обсуждения под "API" имелось ввиду интерфейс операционной системы, который нужен для использования ее приложениями и вопрос был именно про абстрактуную API в какой-либо ОС. И прошу вас все таки открыть глаза и посмотреть немного шире среды(BB) вашего обитания.

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

Просто хочу сказать, что все это просто замечательно, но все таки не надо делать мягко говоря "не обдуманные" заявления о устарелости интерфейсов ОС. И если вы все таки делаете такие заявления, то пожалуйста предлагайте решение, потому что "критика без предложения - есть критиканство". Кстати как устроены ОС построенные на Оберон-технологии? В частности как происходит диспетчеризация системных вызовов? Дайте сам отвечу на этот вопрос :) Диспетчеризация системных вызовов основана на механизме обработки прерываний и исключений, а они защиты в процессоре. Вывод можно сделать только один: термин "абстракция" подходит только для прикладного программиного обеспечения, следовательно ваш вывод об устарелости API в Windows, а следовательно Native API и далее диспетчеризации системных вызовов не имеет под собой никаких реальных доводов и фактов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Понедельник, 17 Апрель, 2006 15:00 

Зарегистрирован: Вторник, 11 Апрель, 2006 19:46
Сообщения: 12
Да и если вы будете говорить об ООП ОС, то придеться вам лет 100 подождать пока они выйдут на массы : :P


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Понедельник, 17 Апрель, 2006 15:20 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Цитата:
Кстати как устроены ОС построенные на Оберон-технологии?

Так и устроены. Низкоуровневые аспекты "зашиты" в несколько непереносимых модулей и скрыты за абстрактными типами данных, в т.ч. объектно-ориентированными.
Цитата:
механизме обработки прерываний и исключений, а они защиты в процессоре.

Самый современный в мире процессор Эльбрус E2K на аппаратном уровне поддерживает строгую типизацию, тэговые типы и безопасность модулей, работающий в общем адресном пространстве. Т.е. все концепции, обтработанные в языках высокого уровня, постепенно переходят на уровень архитектуры - это единственно возможный путь развития ВТ.
Цитата:
абстрации делают процесс программирования более легким и менее ресурсоемким

Делают? Да промышленное программирование без выстраивания многих слоев абстракций сегодня немыслимо в принципе!
Цитата:
когда не было никаких абстракций в языках программирования не было крупных проектов?

Такого масштаба - не было. Для инженерии 60-х годов 50 тыс. строк было пределом. Сравните с современными масштабами в 50 млн. и подумайте, почему такой скачок был возможен. А равно как и почему в 70-х годах программную инженерию поразил первый кризис. И что помогло его разрешить.
Цитата:
Да и если вы будете говорить об ООП ОС, то придеться вам лет 100 подождать пока они выйдут на массы :

Ну почему же? Вон .NET, построенная на тех же идеях, семимильными шагами идет.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Понедельник, 17 Апрель, 2006 17:43 

Зарегистрирован: Вторник, 11 Апрель, 2006 19:46
Сообщения: 12
Цитата:
Самый современный в мире процессор Эльбрус E2K на аппаратном уровне поддерживает строгую типизацию, тэговые типы и безопасность модулей, работающий в общем адресном пространстве. Т.е. все концепции, обтработанные в языках высокого уровня, постепенно переходят на уровень архитектуры - это единственно возможный путь развития ВТ.

Эльбрус E2K уже не самый современный процессор. E6K не слышали о таком? Это ответ нынешним многоядерным процессорам. Да и вообще давайте все таки говорить о реальных вещах. Эльбрус представляет пока только научный интерес, как и 30 лет назад. Кстати поздравляю вас всех - Бабаяну надоело исследовать просто так без денег и он ушел в Intel. Но после этого шага возможна реальная реализация всех этих революционых идей, потому что Intel ориентируется на массовый потребительский рынок и у них имеются соответствующие ресурсы. Да и более того - типизация на апаратном уровне это действительно революция, но здесь как всегда есть подводный камень - у Эльбруса должна есть способность выполнять команды EM64T и AMD64 - а отсюда должны возникуть проблемы, которыми славились процессоры этих архитектур. Ну это как обычно, если возвращаться к вопросу о совместимости.
Цитата:
Ну почему же? Вон .NET, построенная на тех же идеях, семимильными шагами идет.

.NET не является операционной системой. Если уж и говорить об этом, то в Windows Vista будет добавлена очень поддержка .NET не больше, не меньше.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Понедельник, 17 Апрель, 2006 21:06 

Зарегистрирован: Воскресенье, 27 Ноябрь, 2005 07:19
Сообщения: 11
Откуда: /ru/perm
Виктор Картунов ака matik - Кое-что об Эльбрусе-2000. (07.12.2005)
Илья Ермаков писал(а):
Т.е. все концепции, обтработанные в языках высокого уровня, постепенно переходят на уровень архитектуры - это единственно возможный путь развития ВТ.
АБСОЛЮТНО НЕВЕРНО!!!

Напротив, из современных процессоров надо выкидывать всё MMU.

Статические типы могут быть проверены во время компиляции и вообще не требовать ресурсов во время исполнения.
Динамические типы вполне могут проверяться программно.

Вопрос на засыпку: как назывался, когда закончился и с каким результатом последний проект "объектно-ориентированного процессора" от Intel?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Понедельник, 17 Апрель, 2006 21:24 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Цитата:
Динамические типы вполне могут проверяться программно.

Могут-то могут, да возникают проблемы безопасности. Компонентным системам приходится работать в общем адресном пространстве, поэтому вредоносный код, внедренный в модуль, например, с помощью кодовой вставки, может обойти все программные проверки. Поэтому типизацию придется вынести на аппаратный уровень, так же как когда-то пришлось вводить в Intel защищенный режим.
Цитата:
Эльбрус E2K уже не самый современный процессор. E6K не слышали о таком?

Нет, не слышал. В область процессоров залезать не буду, прямо говорю - не знаток. Про аппаратную поддержку типизации и модульности слышал на конференции в МГУ, идея понравилась и показалась очень хорошей.
Цитата:
NET не является операционной системой.

NET является платформой выполнения, которая обеспечивает загрузку/выполнение/ран-тайм для приложений. Чем это принципиально отличается от ОС?

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


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 40 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB