LINUX.ORG.RU

Какие варианты шардинга ресурсов при программировании существуют?


0

1

Какие варианты шардинга ресурсов при программировании в Linux на Си существуют? Например когда необходимо определить механизм разделения хранения определенных переменных, структур, массивов, таблиц на различных составляющих ресурсной среды? Хранилища, сетевые узлы, процессоры, ядра итд...

★★

Чето я не припомню таких возможностей у _низкоуровневого_ языка Си. Говорят «Си - кроссплатформенный ассемблер», выводы очевидны :)

Если не секрет, что такое «шардинг ресурсов»?

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

Чето я не припомню таких возможностей у _низкоуровневого_ языка Си. Говорят «Си - кроссплатформенный ассемблер», выводы очевидны :)

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

Если не секрет, что такое «шардинг ресурсов»?

Интересно, как этот ваш вопрос коррелирует с вашим же высказыванием относительно того, что вы там что-то «не помните»? Если вы не знаете что это такое, как вы можете это помнить или не помнить? Чтобы просто поговорить?

ChAnton ★★
() автор топика
Ответ на: комментарий от ChAnton

Не желая участвовать в Вашем словесном ананировании, отправляю Вас в игнор. Всего доброго.

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

Всего доброго!

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

Не желая участвовать в Вашем словесном ананировании, отправляю >Вас в игнор. Всего доброго.

Да вы не обижайтесь. Просто прежде чем что-либо утверждать или тем более советывать, надо бы наверное самому выяснить, о чем идет речь. Или хотя-бы вам поменять местами ваш первый вопрос со вторым.

Начнем с того что подобная фраза была придумана вовсе не мной. >Далее, я могу не знать что такое «шардинг», но подозреваю что >в самом языке Си таких возможностей вроде как нет,

Вы себя самого еще раз внимательно прочитайте. Еще раз, как можно не знать что такое шардинг, а потому, исходя из логики, быть уверенным или даже подозревать что такой возможности где-то там нет, как вы понимаете вы также не можете. Причем там (в СИ) о чем вы также имеете посредственное представление, например называя его (высокоуровневый язык Си) «кроссплатформенным ассемблером»))) А потому никакого отношения ваш ответ к реальности не имеет. Цель моего вопроса получит как можно больше технической информации насчет возможностей Си в данном плане. «Руками»-это не ответ, так как язык программирования и программы состоят из определенных конструкций, инструментов, и алгоритмов, например функций, структур, библиотек а также итд... Вот я и хочу понять, есть ли у кого подобный опыт и на чем он основан.

ChAnton ★★
() автор топика

Какие варианты шардинга ресурсов при программировании существуют?

В этой фразе каждое слово – чудовищное насилие над языком. Даже порядок слов выдаёт в ней дурной подстрочный перевод.

Deleted
()
Ответ на: комментарий от netcat

Шардинг в контексте моего вопроса относиться к любым ресурсам. Совместно используемым. Хотя действительно, изначально этот термин применим к РСУБД. Раздельное хранение частей таблиц, разделение хранилищ индексов и обеспечение отказоустойчивости и быстрого доступа к таким данным. Я же имею ввиду разделение любых ресурсов, наподобие шардинга РСУБД.

ChAnton ★★
() автор топика

Как то расплывчато твое определение ресурсвной среды. Если это банальная БД то и копай в сторону конкретных БД, если задачу можно разбить на процессы то копай в сторону кластеров, если нужно развешивать по нодам потоки то выбирай любой подходящий механизм межпроцессного взаимодейсвия относительно твоего железа/среды/потребностей и вперед кодить. Если у тебя банальный ethernet то про последний вариант забудь, думай как разнести твою задачу на процессы.

TheMixa ★★★
()

ты про разделение/управление ресурсами?

использование библиотеки

простейший вариант - менеджер дин памяти в С как библиотека (аж часть стандартной)

и так со всём

файлы/подключения/ что_по_желаеш

qulinxao ★★☆
()
Ответ на: комментарий от ChAnton

Причем там (в СИ) о чем вы также имеете посредственное представление, например называя его (высокоуровневый язык Си) «кроссплатформенным ассемблером»)))

То есть K&R ты не читал?

aedeph_ ★★
()
Ответ на: комментарий от aedeph_

А при чем тут K&R? Вы вероятно путаете условное название (скорее сленг для общего представления и понимания, исползуемого для сравнивания), и строгое, формальное определение уровня языка. Так вот в строгом формальном определении, язык Си является высокоуровнемым)

ChAnton ★★
() автор топика
Ответ на: комментарий от ChAnton

А где можно прочитать строгое формальное определение высоты уровня языка, конкретные значения высоты для таких языков, как x86 machine code, pdp-11 machine code, gnu assembler language, c, c++, haskell, java, scala, clojure, glsl, vhdl и общепринятое значение границы высоты языка, после которой язык называется высокоуровневым?

Legioner ★★★★★
()
Ответ на: комментарий от Legioner

Вы что, не способны различить понятия высокоуровневого и низкоуровнего языка на уровне его взаимодействия с вичислительной средой/архитектурой вычислительной системы?

ChAnton ★★
() автор топика
Ответ на: комментарий от zz

А другие/мнения мысли будут, или хотя-бы по-теме треда?

ChAnton ★★
() автор топика
Ответ на: комментарий от ChAnton

Все же хотелось бы узнать подробнее про строгое формальное определение высоты уровня языка, упомянутое вами в предыдущем посте.

Legioner ★★★★★
()
Последнее исправление: Legioner (всего исправлений: 1)
Ответ на: комментарий от ChAnton

А при чем тут K&R?

Почитай на досуге, откроешь много нового.

Вы вероятно путаете

Это бы не я, это был создатель языка.

строгое, формальное определение уровня языка

В студию.

aedeph_ ★★
()
Ответ на: комментарий от aedeph_

Почитай на досуге, откроешь много нового.

С него и начинал. Но я вроде бы вам объяснил, что не следует путать сленг и формальные определения, основанные в данном случае на конкретных архитектурных особенностях взаимодействия программы и вычислительной среды.

Это бы не я, это был создатель языка.

См. выше)

В студию.

Что в студию? Есть как-бы вполне очевидные вещи.

PS: Давайте с флудом завяжем. Есть ли мысли по теме треда?

ChAnton ★★
() автор топика
Ответ на: комментарий от ChAnton

Что в студию?

строгое, формальное определение уровня языка

Ты немного туповат, похоже.

Есть ли мысли по теме треда?

Прекратить использовать ЛОР, как бесплатную консультацию (102/717 - это круто) за которую тебе зарплату платят и в конце концов написать в job?

aedeph_ ★★
()
Ответ на: комментарий от Legioner

Все же хотелось бы узнать подробнее про строгое формальное определение высоты уровня языка, упомянутое вами в предыдущем посте.

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

Так вот в таком контексте, Си-это именно высокоуровневый язык программирования.

http://ru.wikipedia.org/wiki/%D1%E8_%28%FF%E7%FB%EA_%EF%F0%EE%E3%F0%E0%EC%EC%...

Цитата: «Иногда Си называют «универсальным ассемблером» или «ассемблером высокого уровня», что отражает различие языков ассемблера для разных платформ и единство стандарта Си, код которого может быть скомпилирован без изменений практически на любой модели компьютера. Си часто называют языком среднего уровня или даже низкого уровня, учитывая то, как близко он работает к реальным устройствам. Однако, в строгой классификации, ОН ЯВЛЯЕТСЯ ЯЗЫКОМ ВЫСОКОГО УРОВНЯ.»

Надеюсь все-таки теперь понятно почему)))

ChAnton ★★
() автор топика
Ответ на: комментарий от aedeph_

Ты немного туповат, похоже.

Да нет, судя по твоим безсодержательным «перлам», это скорее относиться к тебе.Ты ведь по-теме разговора толком кроме холивара и троллинга ничего не произвел) Удачи.

ChAnton ★★
() автор топика
Ответ на: комментарий от aedeph_

Прекратить использовать ЛОР, как бесплатную консультацию >(102/717 - это круто) за которую тебе зарплату платят и в конце >концов написать в job?

Для недалеких и недавно зарегистрированных троллей: ЛОР и существует для безплатных консультаций и обмена опытом.

ChAnton ★★
() автор топика

Найди себе работу, соответствующую твоим умственным способностям....

Никакого шардинга ни в Linux, ни на высокоуровненом, на на низкоуровневом Си не существует. </thread>

anonymous
()
Ответ на: комментарий от ChAnton

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

вообще-то в С никаких таких возможностей никогда не было. Там это лишь на уровне минимум glibc, да и то через жопу.

Т.ч. ты не прав ИМХО.

drBatty ★★
()

Найди себе работу, соответствующую твоим умственным >способностям....

У меня есть работа. Она меня вполне устраивает.

Никакого шардинга ни в Linux, ни на высокоуровненом, на на >низкоуровневом Си не существует.

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

PS: Даже не берусь рассуждать о твоих умственных способностях, так как даже оценивать некого собственно.

ChAnton ★★
() автор топика
Ответ на: комментарий от ChAnton

Для недалеких и недавно зарегистрированных троллей: ЛОР и существует для безплатных консультаций и обмена опытом.

«безплатные» это как? поясни недалёкому…

drBatty ★★
()
Ответ на: комментарий от drBatty

вообще-то в С никаких таких возможностей никогда не было. Там >это лишь на уровне минимум glibc, да и то через жопу.

Да ну брось ты) А что такое glibc?

ChAnton ★★
() автор топика
Ответ на: комментарий от ChAnton

Ты для начала прочитай внимательно ветку, о чем вообще речь, а потом пиши.

без смеха читать невозможно. Хотя смеяться в данном случае грешно…

drBatty ★★
()
Ответ на: комментарий от drBatty

без смеха читать невозможно. Хотя смеяться в данном случае >грешно…

Ааа)) Так это ты, судя по-времени корреляции между твоим и анонимусным сообщением. Ну тогда действительно грешно смеяться. Иди учи, что такое Си, и его библиотеки. А не выделывайся, строя из себя типа «спеца» по-программированию)

ChAnton ★★
() автор топика
Ответ на: комментарий от drBatty

это ты man(3) почитай. А то я испацтала с трудом по кнопкам >попадаю.

А ты почитай вот это: Glibc является библиотекой Си, которая обеспечивает системные вызовы и основные функции, такие как open, malloc, printf и т.д.

На чем написана, для чего и где конкретно используется библиотека glibc, подстольный ты наш?)))

ChAnton ★★
() автор топика
Ответ на: комментарий от ChAnton

Так это ты

нет. Я не пишу под анонимусом несколько лет. Как раз потому, что меня вечно с кем-то путают.

Иди учи, что такое Си, и его библиотеки.

двадцать лет уже учу, а про «шардинг» до сей поры слыхом не слыхивал.

drBatty ★★
()
Ответ на: комментарий от drBatty

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

ChAnton ★★
() автор топика
Ответ на: комментарий от ChAnton

А ты почитай вот это: Glibc является библиотекой Си, которая обеспечивает системные вызовы и основные функции, такие как open, malloc, printf и т.д.

ну. Я знаю. Сам же тебя в man(3) отправил. Я там уже был.

На чем написана, для чего и где конкретно используется библиотека glibc, подстольный ты наш?

написана по большей части на Pure C вперемешку с асмом. Сырцы доступны, качай@изучай. Используется чуть менее чем везде, если мы про GNU OpenSource.

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

drBatty ★★
()
Ответ на: комментарий от ChAnton

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

я прочитал, спасибо. Было весело.

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

drBatty ★★
()
Ответ на: комментарий от drBatty

Да я не говорил что САМ Си в его самом «чистом виде». С чего ты взял то? И библиотека Си, все-таки непосредственно относиться языку Си, потому как написана и используется на нем и в нем. А вот решения, которые можно применить, например ранее удачно и успешно кем-то примененные с ПРИМЕНЕНИЕМ в свою очередь языка Си меня как раз интересуют.

Простите за грубость если что.

ChAnton ★★
() автор топика
Ответ на: комментарий от drBatty

стандартная библиотека (в том числе, вполне корректная её реализация glibc) таки является частью языка Си

// тот самый анонимус, который посылал ТС-а заняться чем-нибудь полезным выше

anonymous
()
Ответ на: комментарий от drBatty

В следующий раз, используй пожалуйста в devel технические >термины, а не аллегории. А уж если аллегории, то пиши >по-русски, а не на наречии гопников и школьников младших >классов.

Не понял, что вы имеете ввиду под понятием «технические термины», и где конкретно я использовал указанные вами наречия, в то время, когда вы сами отказываетесь читать внимательно то, что написано. Я потому и использовал алиголии, чтобы попытаться донести мысль в среду, в которой эти ТЕХНИЧЕСКИЕ кстати говоря термины ранее не использовались.

ChAnton ★★
() автор топика
Ответ на: комментарий от ChAnton

Да я не говорил что САМ Си в его самом «чистом виде». С чего ты взял то? И библиотека Си, все-таки непосредственно относиться языку Си, потому как написана и используется на нем и в нем.

мало-ли что там на си написано?

А вот решения, которые можно применить, например ранее удачно и успешно кем-то примененные с ПРИМЕНЕНИЕМ в свою очередь языка Си меня как раз интересуют.

глянь сырцы СУБД какой-нить, в чём проблема-то?

drBatty ★★
()
Ответ на: комментарий от anonymous

стандартная библиотека (в том числе, вполне корректная её реализация glibc) таки является частью языка Си

я-то знаю. Но в данном случае, там только зайчатки «шардинга», если я конечно правильно телепатировал запрос ТСа.

drBatty ★★
()
Ответ на: комментарий от anonymous

Ладно. Ветка превратилась в холивар. Но польза все-таки есть. Спасибо всем, даже тем кто критиковал.

ChAnton ★★
() автор топика
Ответ на: комментарий от ChAnton

Не понял, что вы имеете ввиду под понятием «технические термины», и где конкретно я использовал указанные вами наречия, в то время, когда вы сами отказываетесь читать внимательно то, что написано. Я потому и использовал алиголии, чтобы попытаться донести мысль в среду, в которой эти ТЕХНИЧЕСКИЕ кстати говоря термины ранее не использовались.

ну лично я так ничего и не понял, если честно.

drBatty ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.