Форум программистов, компьютерный форум, киберфорум
Assembler: Linux
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
4 / 4 / 0
Регистрация: 13.07.2021
Сообщений: 46
NASM

CMS на NASM

15.04.2024, 16:29. Показов 1210. Ответов 9

Студворк — интернет-сервис помощи студентам
Добрый день всем. Решил я тут создать cms на ассемблере под linux. Не пытайтесь меня отговорить, это не лечится).
Во-первых, я реально люблю асм, он мне нравится как язык; во-вторых, я очень хочу глубоко разобраться. Я копнул в
алокацию памяти, поработал с brk и сокетами из nasm'а, я уверен, что хороший зрелый проект прокачает меня очень сильно.
Придётся много чего посмотреть, много куда залезть, огромная зона для исследования.

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

Я примерно понимаю, как работает wp, а также как пишутся свои cms на php. Я так понял, что глобально cms'ки состоят из 2
частей: одна для админке и записи в БД, вторая - обработка запросов, проверка и выдача нужной инфы. Также на серваках
стоят интерпретаторы php, так что там можно через скрипт перенаправлять запросы. Как я понимаю, у меня будет отдельная
программа для этого.

До чего я додумался сам:

1). Через htaccess или что-то вроде того я перенаправляю get-запросыл на процесс.
2). Процесс слушает сокет на определённом ip и порту.
3). Как только приходит запрос, он его принимает и отдаёт на откуп дочернему процессу, а сам возпращается слушать.
4). Дочерний процесс проверяет запрос на валидность, проверяет, достаточно ли прав, связывается с БД, вставляет нужные
элемены в нужные места и отдаёт в ответ фалы html и css. Потом закрывается закрывает соединение и сам завершается.
5). Есть веб-интерфейс админки, там происходит редактирование и добавление контента.

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

Всем добра и хорошего дня.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.04.2024, 16:29
Ответы с готовыми решениями:

[NASM] Ошибка "nasm error more than one input file specified type"
Начал изучать ассемблер сделал все как в методичке и зашел в тупик значит скачал я от сюда инстал файл NASM...

Можно ли использовать темы для CMS без самой CMS?
Можно ли использовать темы для CMS без самой CMS? Конкретно, вот эту: для WordPress, тема очень понравилась, но использовать сам wordpress...

Ошибка при поисковом запросе (OUR-CMS бесплатная CMS на файлах)
Прошу помощи исправления ошибки. (OUR-CMS бесплатная CMS на файлах, ссылка на оф сайт http://ourcms.info/) ...при поисковом запросе...

9
Модератор
Эксперт по электронике
 Аватар для ФедосеевПавел
8659 / 4494 / 1669
Регистрация: 01.02.2015
Сообщений: 13,905
Записей в блоге: 12
15.04.2024, 16:47
По алгоритмам, думаю, лучше спросить в соответствующем разделе
https://www.cyberforum.ru/cms/

Создайте тему и там - это не будет нарушением Правил форума (кросспостингом), т.к. темы в разных разделах.
0
112 / 110 / 30
Регистрация: 08.05.2021
Сообщений: 485
15.04.2024, 17:02
Твоя проблема скорее всего в этом:
Цитата Сообщение от Uko1ove Посмотреть сообщение
Как это всё вместе собрать
Тебе не нужно что-то брать и собирать вместе с остальным. Сейчас у тебя всё сводится к комбинированию того, о чём ты где-то узнал. Но это не имеет смысла. Простой пример:
Цитата Сообщение от Uko1ove Посмотреть сообщение
связывается с БД
под БД ты 99% имел ввиду рсубд. А ты ответил себе на вопрос зачем тебе вообще нужна рсубд? Я не вижу никаких причин для использования этого, а вот недостатки вижу. Что тебе нужно? Обрабатывать/хранить какие-то данные. Где ты можешь эти данные обрабатывать? В памяти. Где можешь хранить? На диске. В ядре уже есть эта функциональность - mmap. Это максимально просто/гибко/быстро/удобно - никакой бд в твоём понимании здесь не нужно. Ты не на пхп пишешь.

Поэтому тебе просто нужно представлять, как то, что ты хочешь сделать, может быть реализовано, а далее искать наиболее близкое к этому решение.
1
4 / 4 / 0
Регистрация: 13.07.2021
Сообщений: 46
15.04.2024, 18:10  [ТС]
Цитата Сообщение от mashmed135 Посмотреть сообщение
Обрабатывать/хранить какие-то данные. Где ты можешь эти данные обрабатывать? В памяти. Где можешь хранить? На диске. В ядре уже есть эта функциональность - mmap. Это максимально просто/гибко/быстро/удобно - никакой бд в твоём понимании здесь не нужно. Ты не на пхп пишешь.
Поэтому тебе просто нужно представлять, как то, что ты хочешь сделать, может быть реализовано, а далее искать наиболее близкое к этому решение.
Благодарю. Да, я заню про mmap, но как-то не подумал, что могу обойтись без СУБД. Благодарю. Я в низкоуровневом (или около низкоуровневом) программировании недавно, но так кайфую от него, что просто не передать. А вообще алгоритм, описанный мною выше, имеет место быть? Нормально будет так реализовать взаимодействие?
0
112 / 110 / 30
Регистрация: 08.05.2021
Сообщений: 485
15.04.2024, 18:29
Цитата Сообщение от Uko1ove Посмотреть сообщение
Нормально будет так реализовать взаимодействие?
Ну там в остальном всё те же элементы(включая этот вопрос). Но в целом, если ты пишешь с целью разобраться/попробовать, то нормально.
1
4 / 4 / 0
Регистрация: 13.07.2021
Сообщений: 46
15.04.2024, 18:32  [ТС]
Цитата Сообщение от ФедосеевПавел Посмотреть сообщение
По алгоритмам, думаю, лучше спросить в соответствующем разделе
Спасибо, не думаю, что мне это поможет. Дело в том, что почти все cms написаны на php, а это всё же высокоуровневый язык программирования притом скриптовой. Я почитал темы там, прежде чем отнимать у людей время. Есть там вопрос по поводу того, как работает WordPress, так там куча ответов, типа, магия и т.п.

Также есть тема, как создать свою cms, всё в итоге свелось к тому, что лучше писать на известных, т.к., кроме вас, никто не сможет их поддерживать. Мне же надо мнение людей, который знакомы с низкоуровневым программированием. Вот товарищ mashmed135 задал вопросы, о которых я даже не подумал, хотя знаю об инструментах, о которых он писал, в итоге подкинул пару идей. У меня не так много опыта в низухе, я неадекватен пока ещё в суждениях. Мне надо понять, правильно ли я двигаюсь, либо человек скажет, что я делаю много лишнего, подскажет, в чём не прав и аргументирует (как это сделал mashmed135).

Но всё равно спасибо за ваше время, что не прошли мимо. Я ещё полистаю темы в разделе cms, вдруг чего полезного напишут.
0
Модератор
2131 / 1000 / 170
Регистрация: 23.07.2018
Сообщений: 3,349
Записей в блоге: 3
16.04.2024, 09:29
Цитата Сообщение от Uko1ove Посмотреть сообщение
Дело в том, что почти все cms написаны на php, а это всё же высокоуровневый язык программирования притом скриптовой
Необязательно на Подфоруме Вебмастеров, можно посоветоваться по разработке CMS и серверов
в других разделах программирования
https://www.cyberforum.ru/programming-theory/

https://www.cyberforum.ru/cpp-linux/

Цитата Сообщение от Uko1ove Посмотреть сообщение
знаю об инструментах, о которых он писал, в итоге подкинул пару идей. У меня не так много опыта в низухе
Вам нужно с уровня инструментов, системных вызовов и сокетов подняться до уровня задачи.
А для начала сформулировать задачу на русском языке так, как Вы её понимаете, не углубляясь в решение.
Что есть CMS?
Что она делает?

Секрет применения "низкоуровневых" средств в том, чтобы используя их возможности, в итоге максимально повысить уровень своей программы, оставаясь в рамках требований и ограничений.
Сервер на уровне сокетов и соответствующий системных вызовов получится примерно одинаковым, что бы Вы не использовали: Фортран, perl, nasm или вообще средства не ориентированные на какой-либо конкретный язык.
1
4 / 4 / 0
Регистрация: 13.07.2021
Сообщений: 46
16.04.2024, 09:49  [ТС]
Благодарю. Почитаю ссылки.

Цитата Сообщение от politoto Посмотреть сообщение
Вам нужно с уровня инструментов, системных вызовов и сокетов подняться до уровня задачи.
А для начала сформулировать задачу на русском языке так, как Вы её понимаете, не углубляясь в решение.
Что есть CMS?
Что она делает?
Просто с этим у меня как раз и проблемы: абстракция в голове есть, а вариантов конкретной реализации не так много. В любом случае буду двигаться дальше, по ходу дела выйду куда-нибудь. Сроков у меня нет, на деньги не поставят за ошибки. Буду исследовать.
Спасибо
1
Модератор
2131 / 1000 / 170
Регистрация: 23.07.2018
Сообщений: 3,349
Записей в блоге: 3
16.04.2024, 11:33
Вот и изложите абстракции из головы.
Пусть не только у Вас будут.
0
416 / 307 / 113
Регистрация: 28.08.2013
Сообщений: 832
15.10.2024, 14:31
Цитата Сообщение от Uko1ove Посмотреть сообщение
1). Через htaccess или что-то вроде того я перенаправляю get-запросыл на процесс.
Зачем использовать web-сервер Apache (htaccess), если процесс и так будет слушать IP и PORT?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.10.2024, 14:31
Помогаю со студенческими работами здесь

Написание собственной CMS. Правильная разработка структуры CMS
ВСЕМ ПРИВЕТ Нужна ваша помощь. У меня стоит задача сделать самописную СМS(или движок). Я признаться имею весьма не полное...

Какой локальный сервер можно установить для CMS Drupal и какую версию CMS выбрать
Подскажите, пожалуйста, какой локальный сервер можно установить для CMS Drupal и какую версию CMS выбрать? Если можно, подскажите где можно...

Моя мини CMS - Template CMS
Решил написать вот такую маленькую CMS не требующую СУБД (MySQL, PostgreSQL и тд...) Template CMS Предназначение: сателлиты,...

CMS или шаблон к CMS
Есть ли CMS или шаблоны в таком духе, как на картинке?

Какую cms можно использовать и как cms и синхронно, как конструктор сайтов?
Какую cms можно использовать и как cms и синхронно, как конструктор сайтов? Хочу создавать сайты, как в uCoze, но на норм хостинге.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru