Главное меню
Мы солидарны с Украиной. Узнайте здесь, как можно поддержать Украину.

x86 vs ARM

Автор Karakurt, января 4, 2013, 16:27

0 Пользователи и 1 гость просматривают эту тему.

Python

Я лучше не буду говорить, как выглядит работа с андроидным симулятором на моем компьютере. Складывается впечатление, что создатели Андроида намеренно ограничивают написание софта для него. Весь софт — на джаве, но иначе как на тормозном симуляторе его не потестишь. IDE для Андроида, запускающееся в самом Андроиде, тоже вряд ли существует. Свинг и awt не поддерживаются (значит, десктопный софт портировать не получится). Безгуишные джава-приложения по умолчанию не поддерживаются (впрочем, насколько могу понять, это решаемо). А хотя, еще же веб-интерфейс есть.
Пролетареві ніколи вчити європейських мов, бодай би свою знати добре і на ній принести до своєї хати світло знання (Гнат Хоткевич)
ÆC CASALI NAXI PRASQURI: AHOV CÆRU, MERTVÆRI TÆ SLAVUTÆT!
Вони просили його: «Скажи: кетум», а він говорив: «сатем», і не міг вимовити правильно.
Хотелось бы также отметить, что "Питон" - это "мышиный язык" : "пи+тон". © АБР-2

Toman

Кстати о птичках - как думаете, откуда было взяться исторической разнице принятых в DOS двух типов "пользовательских" исполнимых файлов - .com и .exe (которую разницу потом стали нарушать в смысле присвоения расширений, не соответствующих реальному содержимому - но это уж потом, а форматы-то никуда не делись)? Это авторы DOS, что ли, специально придумали для усложнения жизни программистам сразу два разных формата вместо одного общего?
Во́зле до́ма хо́лм с куля́ми - вы́йду на́ холм, ку́ль поставлю.
В славном городе Miami тётки мерялись ногтями, тик иң озын завсегда у Фиделя борода!

Demetrius

Цитата: Toman от февраля 20, 2013, 17:09
Это авторы DOS, что ли, специально придумали для усложнения жизни программистам сразу два разных формата вместо одного общего?
Во-первых, .COM был в MS-DOS 1.0, а .EXE добавили в MS-DOS 2.0. Оба работали под x86.

Во-вторых, в двух форматах нет ничего странного (хотя они и избыточны).

Python

.com — просто набор инструкций, где и код, и данные лежат в одном сегменте, загружается в память без каких-либо дополнительных действий.
.exe также содержит таблицу настройки адресов, которая обрабатывается при загрузке. Во времена 16-битных процессоров это имело значение: поскольку размер сегмента ограничен, это накладывало ограничения и на размеры .com-программы. Кроме того, .com считался менее безопасным форматом.
Пролетареві ніколи вчити європейських мов, бодай би свою знати добре і на ній принести до своєї хати світло знання (Гнат Хоткевич)
ÆC CASALI NAXI PRASQURI: AHOV CÆRU, MERTVÆRI TÆ SLAVUTÆT!
Вони просили його: «Скажи: кетум», а він говорив: «сатем», і не міг вимовити правильно.
Хотелось бы также отметить, что "Питон" - это "мышиный язык" : "пи+тон". © АБР-2

Demetrius

Цитата: Python от февраля 20, 2013, 17:09
Складывается впечатление, что создатели Андроида намеренно ограничивают написание софта для него
По-моему это просто современный менталитет. Вряд ли это делали специально. Мне кажется, создатели просто и не особо задумывались, что кто-то захочит писать программы под их поделие без эклипсов и монструозных SDK.

Demetrius

Цитата: Python от февраля 20, 2013, 17:16
Во времена 16-битных процессоров это имело значение: поскольку размер сегмента ограничен, это накладывало ограничения и на размеры .com-программы. Кроме того, .com считался менее безопасным форматом.
А что мешало написать в com-е свой загрузчик, который бы подгружал остальной код в другие сегменты? :???

Лом d10

ЦитироватьНу, скажем, ОО бесплатен, но это нормальная офисная система. А вообще — МСО тоже бесплатен. Не понимаю, зачем морочить себе голову. :donno:
да знаком и с ОО и с ЛО , но пересылать доки почтой - ломка , да и не один я над ними работать могу , т.ч. Гугл

Python

Цитата: Demetrius от февраля 20, 2013, 17:19
Цитата: Python от февраля 20, 2013, 17:16
Во времена 16-битных процессоров это имело значение: поскольку размер сегмента ограничен, это накладывало ограничения и на размеры .com-программы. Кроме того, .com считался менее безопасным форматом.
А что мешало написать в com-е свой загрузчик, который бы подгружал остальной код в другие сегменты? :???
Чем добавлять загрузчик в каждый .com, не проще ли добавить его в ОС (что и было сделано)? Кроме того, даже если в .com положить загрузчик, это не решает проблемы невозможности многосегментного кода в одном запускаемом файле.
Пролетареві ніколи вчити європейських мов, бодай би свою знати добре і на ній принести до своєї хати світло знання (Гнат Хоткевич)
ÆC CASALI NAXI PRASQURI: AHOV CÆRU, MERTVÆRI TÆ SLAVUTÆT!
Вони просили його: «Скажи: кетум», а він говорив: «сатем», і не міг вимовити правильно.
Хотелось бы также отметить, что "Питон" - это "мышиный язык" : "пи+тон". © АБР-2

Alone Coder

Цитата: Toman от февраля 20, 2013, 17:03
8088 не совместим с 8080 по кодам буквально - однако система команд устроена таким образом, что возможно довольно простое автоматическое преобразование готовых скомпилированных исполнимых файлов таким образом, чтобы оно выполнялось, будучи загружено в рамках одного сегмента на 8088
Про проблему определения код/данные и про релокацию вам, должно быть, тоже не известно.

Alone Coder

Цитата: Toman от февраля 20, 2013, 17:03
А сделать пусть даже слабенькую персоналку на 8-битном процессоре - это всё же за гранью фантастики
Я вас удивлю, но на ZX Spectrum уже через год после выхода были и текстовые редакторы, и среды разработки на куче языков, и электронные таблицы, и базы данных, и даже пакеты 3D-моделирования. При том, что он изначально не был совместим с CP/M.

Toman

Цитата: Demetrius от февраля 20, 2013, 17:07
Википедия, однако, согласна с Қодером.
У Кодера и Википедии просто несколько специфическое понимание битности, отличающееся от советской традиции :)
В моём понимании процессор, адресующий и оперирующий 16-битными адресами, никак не может считаться 8-битным, а является именно 16-битным.

Цитата: Demetrius от февраля 20, 2013, 17:07
Ну, сейчас Вам от Қодера достанется.
См. выше. За что?
Во́зле до́ма хо́лм с куля́ми - вы́йду на́ холм, ку́ль поставлю.
В славном городе Miami тётки мерялись ногтями, тик иң озын завсегда у Фиделя борода!

Demetrius

Цитата: Python от февраля 20, 2013, 17:24
Чем добавлять загрузчик в каждый .com, не проще ли добавить его в ОС (что и было сделано)?
Зачем в каждый? :??? Многим программам хватило бы и одного сегмента.

Цитата: Python от февраля 20, 2013, 17:24
Кроме того, даже если в .com положить загрузчик, это не решает проблемы невозможности многосегментного кода в одном запускаемом файле.
И где тут проблема?

Python

Цитата: Demetrius от февраля 20, 2013, 17:17
Цитата: Python от февраля 20, 2013, 17:09
Складывается впечатление, что создатели Андроида намеренно ограничивают написание софта для него
По-моему это просто современный менталитет. Вряд ли это делали специально. Мне кажется, создатели просто и не особо задумывались, что кто-то захочит писать программы под их поделие без эклипсов и монструозных SDK.
Да хотя бы простенький редактор с подсветкой синтаксиса и кнопкой RUN. Это есть? Можно ли вообще запустить javac на андроиде?

Будь у создателей желание сделать Андроид полноценной десктопообразной системой (а не дорогой игрушкой), они бы начали с портирования десктопных библиотек. Это есть? Этого нет. Зато есть свой велосипед, на котором можно до бескончности мастерить игрушки с шариками для блондинок.
Пролетареві ніколи вчити європейських мов, бодай би свою знати добре і на ній принести до своєї хати світло знання (Гнат Хоткевич)
ÆC CASALI NAXI PRASQURI: AHOV CÆRU, MERTVÆRI TÆ SLAVUTÆT!
Вони просили його: «Скажи: кетум», а він говорив: «сатем», і не міг вимовити правильно.
Хотелось бы также отметить, что "Питон" - это "мышиный язык" : "пи+тон". © АБР-2

Demetrius

Цитата: Python от февраля 20, 2013, 17:43
Да хотя бы простенький редактор с подсветкой синтаксиса и кнопкой RUN. Это есть? Можно ли вообще запустить javac на андроиде?
Я о таком не слышал.

Alone Coder

Цитата: Toman от февраля 20, 2013, 17:39
У Кодера и Википедии просто несколько специфическое понимание битности, отличающееся от советской традиции :)
В моём понимании процессор, адресующий и оперирующий 16-битными адресами, никак не может считаться 8-битным, а является именно 16-битным.
В таком случае 8008 - 14-битный.

Toman

Цитата: Alone Coder от февраля 20, 2013, 17:34
Я вас удивлю, но на ZX Spectrum уже через год после выхода были и текстовые редакторы, и среды разработки на куче языков, и электронные таблицы, и базы данных, и даже пакеты 3D-моделирования.
Этим - не удивите. Но вот вы меня удивите, если сейчас скажете, что адресное пространство его состоит из 256 ячеек памяти и ни ячейкой больше :)

Цитата: Alone Coder от февраля 20, 2013, 17:29
Про проблему определения код/данные и про релокацию вам, должно быть, тоже не известно.
Ну так а дизассемблеры на что? В стандартных случаях, если программист специально не увлекался модификацией кода во время исполнения, и, наоборот, не всовывал заведомо ложные переходы на данные, нехитрыми формальными процедурами можно всё-таки отследить, где код, а где нет. И дизассемблировать, в явном или неявном виде. Если программист увлекался такими вещами, и дизассемблер напарывается и выдаёт хрень, либо встаёт и честно говорит, что не может ничего понять - ну, тогда сам себе (или, скорее, как раз не себе, а влипшему пользователю) злобный буратино.
Во́зле до́ма хо́лм с куля́ми - вы́йду на́ холм, ку́ль поставлю.
В славном городе Miami тётки мерялись ногтями, тик иң озын завсегда у Фиделя борода!

Wolliger Mensch

Цитата: Лом d10 от февраля 20, 2013, 17:20
да знаком и с ОО и с ЛО , но пересылать доки почтой - ломка , да и не один я над ними работать могу , т.ч. Гугл
Вото я и говорю — вы очень непритязательный человек.  :yes:
«Вот интересно, каких лингвистических жемчуг можно найти в море отодвинутых книг», Ян Гавлиш.
«Впредь прошу помнить, что придумал игру не для любых ассоциаций, а для семантически оправданных. Например, чтó это такое: ,,рулетке" — ,,выпечке"?? Тем более, что сей ляпсус я сам совершил...», Марбол
«Ветхий Завет написан на иврите и частично на армейском», Vesle Anne
«МЛ(ять)КО ... ПЛ(ять)NЪ», Тася
«Вот откроет этот спойлер, например, Марго, ничего не подозревая, а потом будут по всему форуму блюющие смайлики...», Авал
«Томан приличный мужчина. Правда по патриархальным меркам слегка голодранец», Vesle Anne
«Возможен ли фонетический переход "ж" в "п с придыханием"», forest

Toman

Цитата: Alone Coder от февраля 20, 2013, 17:46
В таком случае 8008 - 14-битный.
Я бы даже сказал, 16-битный. (Просто самим по себе 8008 я совсем никогда не интересовался из-за его, скажем так, неактуальности, и верил на слово утверждениям о его якобы 8-битности, но, оказывается, как вижу теперь, поинтересовавшись более конкретно после этого вашего поста, это был почти тот же 16-битный волк в овечьей шкуре). 32-битные процессоры, кажется, тоже как бы не сразу научились адресовать 4 Гб физической памяти (раз уж вы обращаетесь к ширине шины и т.п. вопросам физической реализации), ну а у этих-то физическая - она же без альтернативы была.
Во́зле до́ма хо́лм с куля́ми - вы́йду на́ холм, ку́ль поставлю.
В славном городе Miami тётки мерялись ногтями, тик иң озын завсегда у Фиделя борода!

mnashe

Цитата: Wolliger Mensch от февраля 20, 2013, 16:33
Обратите внимание, что раньше, во времена существования КПК и Windows Mobile, разрабатывались программы для работы. Порой весьма подкупающие своими возможностями (например, Softmaker Office), но сейчас КПК нет! Более того, их ничто не заменило. Вообще исчез класс устройств для работы в дороге. :wall:
Странно...
У меня КПК никогда не было. Как раз потому, что всё, что я видел, не вызывало никакого энтузиазма: дорого и очень неудобно.
Я бы хотел тогда что-то типа нетбука. Но не было такого. А сейчас есть.
Что ещё надо для работы?
Понятно же, что маленькое устройство с ограниченным вводом по определению не будет столь же удобным.

Цитата: Demetrius от февраля 20, 2013, 17:19
А что мешало написать в com-е свой загрузчик, который бы подгружал остальной код в другие сегменты?
Мой редактор именно так и делает. Он загружается как .com (на данный момент 53640 байт), а затем получает себе всю доступную память и в ней (а если доступна EMS или HMA, то там) создаёт область для overlay; подпрограммы между сегментами вызываются через специальный шлюз (при этом сами вызовы внутрисегментны).
Но это костыль.
Довольно сложная штука, хотя с менеджером памяти не сравнить. Я этот шлюз очень сильно оптимизировал (я ведь программу не с нуля писал, а дизассемблировал и потом долго улучшал и дополнял).
(Приложил программу и исходники, вдруг кому любопытно).
Адепт единственного числа и безродового склонения
שָׁלוֹם עֲלֵיכֶם!

Highlander

Приложения для работы с графикой - на телефоне?  :o Программы для черчения?!! На дисплейчике в 4-5 дюймов?
Шо вы там курите?

amdf

Цитата: Toman от февраля 20, 2013, 17:03
А сделать пусть даже слабенькую персоналку на 8-битном процессоре.

(wiki/en) SymbOS

Работает на:
Zilog Z80A @ 4 MHz
Память   64 or 128 Кб
Ведовьство, потвори, чяродеание, волхъвование, зеленничьство, церковнаа татба, мертвеци сволочать, крест посекут, или на стенах трескы емлють из креста.

Toman

Цитата: amdf от февраля 21, 2013, 06:25
Работает на:
Zilog Z80A @ 4 MHz
Память   64 or 128 Кб
Если память 64 or 128 Кб, то это уже не восьмибитный процессор, как минимум. У восьмибитного всё адресное пространство 256 ячеек, я же уже говорил (фактически нереально адресовать в 16-битном адресном пространстве, если процессор не умеет 16-битную же целочисленную арифметику, а если он её умеет, и соотв. регистры имеет 16-битные - то он и есть 16-битный; а внутренние особенности реализации этой арифметики - это внутреннее дело процессора). 128 Кб и за 16-битный предел уже выходит. (Т.е. там, значит, какой-то специальный трюк применён для этого дела? Примерно в том же стиле, что изврат с сегментами на 8088, только по-другому? Или ещё хуже что-то?)
Во́зле до́ма хо́лм с куля́ми - вы́йду на́ холм, ку́ль поставлю.
В славном городе Miami тётки мерялись ногтями, тик иң озын завсегда у Фиделя борода!

sasza

Нда, чего только не узнаешь, читая ЛФ. Оказывается, 8080 - 16-битный процессор, с которым совместим 8086, и что у 8-битных процессоров аж 256 ячеек памяти! Вы, пожалуйста, не путайте разрядность процессора с разрядностью адресной шины. Всю жизнь 8080 и совместимый с ним Z80 были 8-разрядными. Никогда никому в голову не приходило оспаривать этот железный факт. И на 8-разрядных испокон века были персоналки. Из социалистических - Роботрон, к примеру. И на них даже работали!

Тайльнемер

Томан, мне кажется, что вы всё правильно пишете, но это совершенно не согласуется с узусом слова «восьмибитный».
Процессоры с восьмибитной адресной шиной — это какая-то редкая и малополезная вещь.
А название «восьмибитные» закрепилось за процессорами с восьмибитными АЛУ и 16-битной адресацией.

Цитата: en.wikipediaEight-bit CPUs use an 8-bit data bus and can therefore access 8 bits of data in a single machine instruction. The address bus is typically a double octet wide (i.e. 16-bit), due to practical and economical considerations. This implies a direct address space of only 64 KB on most 8-bit processors.
Цитата: ру.википедияВосьмибитные процессоры обычно используют 8-разрядную шину данных и 16-разрядную шину адреса, что означает, что их адресное пространство ограничено 64 КБ;

Alone Coder

Цитата: amdf от февраля 21, 2013, 06:25
(wiki/en) SymbOS

Работает на:
Zilog Z80A @ 4 MHz
Память   64 or 128 Кб
Кто бы ещё убедил автора портировать сей шедевр на ATM Turbo 2/ZX Evolution. Я ему два раза писал, а остальным пофиг.

 

Быстрый ответ

Обратите внимание: данное сообщение не будет отображаться, пока модератор не одобрит его.

Имя:
Имейл:
Проверка:
Оставьте это поле пустым:
Наберите символы, которые изображены на картинке
Прослушать / Запросить другое изображение

Наберите символы, которые изображены на картинке:

√36:
ALT+S — отправить
ALT+P — предварительный просмотр