1. Куча / Говнокод #24873

    −5

    1. 1
    2. 2
    3. 3
    4. 4
    Сема. Я чота на винде нажал, теперь у меня любая клавиша - горячая, не могу не написать нихуя
    
    Даже в сонсоле не могу нихуя, что за хуйня? Опять винду переустанавливать?
    В ЛИНУКСЕ ТАКОЙ ХУЙНИ НЕБЫЛО!

    Запостил: TOPT, 08 Октября 2018

    Комментарии (112) RSS

    • Говна поешь.
      Ответить
    • показать все, что скрытоvanished
      Ответить
      • Кто пиздешь? Ты пиздешь.
        На винде я сижу только на работе, в любой непонятной ситуации с виндой - заву сис админа чтоб жопь мою подтер.
        Сёма - подтирай, я насрал.
        Ответить
        • показать все, что скрытоvanished
          Ответить
          • Придет сёма и скажет это вирус? перезапишет винду? Это я и сам умею.
            Ответить
        • То то и оно, что в Linux всё расписано и сделано для понимающих людей, а винда -- для чайников, и там царит хаос, вы попробуйте пакет обновления вручную снести, хуй. Попробуйте даже на WinAPI перечислить физические экраны, сомневаюсь что вы не прожжете ни одного стула, пока попытаетесь это сделать.
          В то время как в Linux есть всё. И это всё задокументировано так, как будто ты читая это являешься интерпретатором декларативного языка. В MSDN же практически всё написано в виде гайдов.
          Ответить
          • показать все, что скрытоvanished
            Ответить
            • И пойдешь пиздовать чистить реестр, local, roaming, и даже temp (редко) и в других местах, хуй знает где еще эта мразь насрала.
              Ответить
            • Для Win10 это справедливо?
              Ответить
              • Частично: некоторые пакеты можно снести, в то время как другие (видимо, с важными анальными зондами) — нельзя.
                Ответить
                • Вот только чем это закончится - хуй знает. Обновления для десятки ведь выходят только как накопительные. По-любому никто не тестирует случаи когда какого-то апдейта в середине не хватает.
                  Ответить
                  • > Вот только чем это закончится - хуй знает.
                    Забавно, что к установке обновлений для «десятки» эта фраза тоже <a href="https://habr.com/ru/post/425459/">применима</a>.
                    Ответить
                    • показать все, что скрытоvanished
                      Ответить
                      • Проглядел мельком. Вроде, пишут, что вин10 охренела. Вроде, годная статья.
                        Ответить
                        • показать все, что скрытоvanished
                          Ответить
                          • показать все, что скрытоvanished
                            Ответить
                            • > сейчас её использовать не имею для себя права
                              Ошибка авто-авторизации? :)
                              > FreeBSD установить не получилось
                              Ну жопа же. Хочу ОС для тупых, чтобы всё реально работало без админов и курения манов, и чтоб не наглела как вин10.
                              Ответить
                              • Действительно смешно.

                                Сразу представляется такой важный пафосный борец за свою безопасность. Винду ему ставить нельзя, потому что Microsoft украдет его обои рабочего стола, а у самого почта на @mail.ru и страничка в ВК небось.

                                И вот он такой ставит какойнить BSD, а там всё на английском и хендбук на 300 страниц
                                Ответить
                                • В «DOS» нет никакого хендбука. Именно поэтому я за «DOS».
                                  Ответить
                                  • показать все, что скрытоvanished
                                    Ответить
                                    • Но он не на 300 страниц!!!
                                      Ответить
                                      • DOS просто интуитивно понятный

                                        Сравни кстати размер доки про винду на технете и про дос

                                        Все потому что винда имеет GUI, а следовательно не интуитивно понятна
                                        А дос имел командный интерфейс, и потому был интуитивно понятен
                                        Ответить
                            • Х.з., а мне десятка нравится.

                              Правда её пришлось переустановить через 10 минут после установки (заклинило какое-то кривое обновление, я попытался его снести и всё распидорасило).

                              Ну и периодически фризило на 1-2 кадра при игре в кружочки (в восьмёрке такой хуйни не было). Но с одним из апдейтов прошло...
                              Ответить
                              • З.Ы. Ещё я не мог поставить последние дрова на видюху (nvidia). Но в принципе похуй, изкоробочные нормально работают, хоть и староваты. Лень разбираться.
                                Ответить
                              • >> заклинило какое-то кривое обновление, я попытался его снести и всё распидорасило

                                А тут где-то рядом писали, что обновления легко удаляются...
                                Ответить
                              • перед обновлениями надо делать рестор поинт
                                Ответить
                              • Лет через 5-10 на ГК: нынешние линуксранцы хвалят Windows, трясут гуями и везде пишут о пользе голографических плиток в меню "пуск", кодят в M$V$; нынешние виндорасы используют Linux, восхищаются новыми консольными утилитами, ругаются на сраный менеджер пакетов, у которого в гуе реализована фича, которой нет в command-line версии, делятся командами для vim.
                                Ответить
                • > важными
                  Прочитал как "влажными".
                  Ответить
          • показать все, что скрытоvanished
            Ответить
            • > а теперь винла

              А теперь встал и быстро показал мне документацию на всю хуйню, написанную тут:
              https://redplait.blogspot.com/2017/01/kiservicetable-from-windows-10-build.html
              И без документации не возвращайся

              Вбей например в гугл какой-нибудь NtReleaseWorkerFactoryWorker: ты там найдешь только какую-то неофициальную херь, типа ШИНДОШС ИНТЕРНАЛС за авторством Руссиновича и Ионеску. Это по-твоему документация?
              Ответить
              • показать все, что скрытоvanished
                Ответить
                • > В линуксе тоже не документирована половина всего. Найди мне описание параметра ядра "drm_kms_helper".

                  Ты тупой, да? У тебя в твоей винде СИСТЕМНЫЕ ВЫЗОВЫ НЕ ДОКУМЕНТИРОВАНЫ НИХУЯ, а ты мне про какой-то внутриядерный механизм.

                  Может быть тебе еще и документацию на планировщики процессов из ядра Linux завернуть? Притом в отличии от сраной винды, у тебя от этой всей хуйни будут исходники, которые ты можешь при желании изучить, а в винде тебе придется дрочить дизассемблер/декомпилятор или устраиваться работать в мелкософт
                  Ответить
                  • показать все, что скрытоvanished
                    Ответить
                    • > тупой тут ты, если не знаешь что в виндуосе надо работать через API и не дергать вызовы напрямую.

                      Меня не ебет что там принято или не принято. Давай документацию или съебывай нахуй. В линуксе системные вызовы документированы отлично.

                      > Об этом написано на первой странице любой книги. Но ты книг не читал. Тебе дружки с ЛОРа напели что "винда отстой' и ты дальше реплицируешь эту чушь.

                      В Коране это тоже на первой странице написано? Ну заебись! А я и не знал, прикинь. А я например на KiFastSyscall броейкпоинты ставил чтоб это говно перехватывать, я вот даже знаю что есть такой аналог strace под винду, которым можно системные вызовы ловить http://drmemory.org/strace_for_windows.html и я еще реверсил спираченной IDA всякое говно виндовое в свое время. Ну да, конечно, нихуя я не знаю, куда мне до такого гения как ты!
                      Ответить
                      • > системные вызовы документированы
                        Ссылку можно?
                        Ответить
                        • Маны. Например, если под strace запустить ls, можно увидеть некий вызов getdents. Ты допустим захотел узнать про этот вызов. Ты вводишь man 2 getdents. И всё.

                          А вот например есть такой системный вызов NtGdiGetRasterizerCaps - где мне на него документацию искать? Код реактоси читать?
                          https://github.com/mirror/reactos/blob/c6d2b35ffc91e09f50dfb214ea58237509329d6b/reactos/win32ss/gdi/ntgdi/text.c#L173
                          Ответить
                          • Девочки, не ссорьтесь!

                            Linux это ядро. Его интерфейс это системные вызовы. А как же еще? Было бы странно если бы они были не документированы

                            А винда это не ядро. Нельзя сделать свой дистрибутив виндуса.
                            Потому интерфейс винды это win32api.

                            Сисколи тут это детали релазиации, как микроархитектура.

                            И кстати винда правда лучше документирована на уровне интерфейсов, потому что писать документацию -- скушно

                            понятно что ее пишут люди в MS за деньги
                            А за бесплатно хацкеры ее писать не будут
                            Ответить
                            • показать все, что скрытоvanished
                              Ответить
                            • > А винда это не ядро. Нельзя сделать свой дистрибутив виндуса.

                              Вообще-то можно, я вот когда-то развлекался, перебрасывая виндовые dll-ки из ReactOS в Windows XP и наоборот, ловля при этом разные глюки. А еще вот:

                              https://winehq.org.ru/ROSdll_compatibility
                              > В конце 2013 (билд 59985) появилась первая информация о совместимости (и заменяемости) kernel32.dll и ntdll.dll из ReactOS с Windows Server 2003 SP1. Эта информация (59985 коммит) многими была воспринята, как знак полной функциональной взаимозаменимости этих файлов в ReactOS и Windows, однако это ошибочное суждение. Данный факт свидетельствует, в первую очередь, о совместимости этих dll на уровне интерфейсов и "общего каркаса" системы. С точки зрения функциональной полноты, эти dll различаются достаточно сильно.

                              https://www.reactos.org/forum/viewtopic.php?f=11&t=5781

                              И ядро в винде таки есть, называется ntoskrnl.exe
                              Ответить
                            • см. также: https://reactos.org/wiki/Windows_2003_to_ReactOS_Components_Test
                              Ответить
                        • Конечно
                          http://man7.org/linux/man-pages/man2/syscalls.2.html
                          Ответить
                          • Но там же какие-то глибцшные врапперы над ними. Часть скорее всего даже не соответствует сырым сисколлам.
                            Ответить
                            • Т.е. и там, и там API, а низкоуровневый питух где-то дремлет.
                              И стоило шуметь-то!
                              Ответить
                      • показать все, что скрытоvanished
                        Ответить
                        • > В линуксе вызовы являются апи, а в винде api это Win32API.

                          В линуксе есть вызовы, которые не являются апи, но документация на них есть. Например, почитай ман на getdents, что там написано?

                          GETDENTS(2)                Linux Programmer's Manual                GETDENTS(2)
                          
                          NAME
                                 getdents, getdents64 - get directory entries
                          
                          SYNOPSIS
                                 int getdents(unsigned int fd, struct linux_dirent *dirp,
                                              unsigned int count);
                                 int getdents64(unsigned int fd, struct linux_dirent64 *dirp,
                                              unsigned int count);
                          
                                 Note: There are no glibc wrappers for these system calls; see NOTES.
                          
                          DESCRIPTION
                                 These  are not the interfaces you are interested in.  Look at readdir(3)
                                 for the POSIX-conforming C library interface.  This page  documents  the
                                 bare kernel system call interfaces.

                          и тут:
                          NOTES
                                 Glibc does not provide a wrapper for these system calls; call them using
                                 syscall(2).  You will need to define the linux_dirent or  linux_dirent64
                                 structure  yourself.   However,  you  probably  want  to  use readdir(3)
                                 instead.
                          
                                 These calls supersede readdir(2).


                          Нет сишного враппера, это не часть API, но документация ЕСТЬ!

                          > Доебываться до недокументированности вызовов в винде, это все равно что доебываться до недокументированности static функции в одном из модулей из которых ядро собирается.

                          Меня не ебет, все равно или не все равно. Ты документацию мне на вызовы принес, или нет?

                          > Ты, может, не понимаешь что такое "API"? Так я и говорю что рано тебе еще про это пиздеть.

                          Мне насрать что ты думаешь по поводу того, понимаю ли я или не понимаю что такое API. Мне даже насрать на твоем мнение, рано или не рано мне пиздеть на какую-то там тему. Документация на системные вызовы винды где?
                          Ответить
                        • > доебываться до недокументированности static функции в одном из модулей из которых ядро собирается.

                          static функцию модуля ядра можно прочитать, открыв соответствующий исходник.

                          Вообще, я не понимаю, нахуя ты мне рассказываешь про какое-то API, про то, что где-то что-то принято или не принято? Во-первых я это знаю, во-вторых мне насрать, для меня это не является основанием не предоставлять документацию.

                          Системные вызовы винды можно дергать из юзерспейса. Какая-нибудь малварь или шеллкод под винду может быть написана таким образом, чтобы обращаться напрямую к системным вызовам винды, даже не обращаясь ко всяким там KiFastSyscall и еще чему-то такому, что можно из либы ntdll.dll взять, в которой собственно и происходит переход в режим ядра через int 2Eh или там syscall, sysenter. Представим ситуацию, что надо отреверсить такую малварь или шеллкод, а документации нет нихуя. И нахуй мне не нужны ваши тупые отмазки вида "ЭТО НЕ API" и прочая такая херня, меня это не ебет совершенно.
                          Ответить
                          • Для таких случаев есть питушня типа «Windows Research Kernel»:
                            http://web.archive.org/web/20080321190436/https://www.microsoft.com/resources/sharedsource/windowsacademic/researchkernelkit.mspx
                            Ответить
                          • показать все, что скрытоvanished
                            Ответить
                            • 1. Я знаю что такое API
                              2. Меня не ебет, что системные вызовы винды это не API. Для меня это не повод их не документировать.
                              3. Проблемы как раз у тебя, т.к. ты спизданул что документация на винде лучше, но я тебя ткнул носом в тот факт, что документации на системные вызовы винды нихуя нет, а ты в ответ начал пиздеть про какое-то API.
                              Ответить
                              • показать все, что скрытоvanished
                                Ответить
                                • > 1. нет, не знаешь.

                                  Вам из погреба виднее.


                                  > 2. если для тебя что-то не повод то это твои проблемы

                                  Это вряд ли мои проблемы т.к. с виндой я довольно мало взаимодействую.


                                  > 3. документации на сисколы у винды нет. А еще она не умеет водить самолеты. Потому что не должна.

                                  Ну и заебись, че.


                                  > их программы работают по 20 лет без перекомпиляции.

                                  Если повезет
                                  Ответить
                                  • Сисколы в «Windows» –— это какой-то глубокий внутренний слой. Их не документируют, чтобы не было соблазна их использовать.

                                    Проблема не в том, что они не документированы, а в том, что к ним не перекрыт доступ из прикладных программ и малварь их может вызвать.
                                    Ответить
                                    • > Сисколы в «Windows» –— это какой-то глубокий внутренний слой. Их не документируют, чтобы не было соблазна их использовать.

                                      Нет, их как раз наверняка документируют. В майкрософте, уверен, есть внутренняя секретная документация на все эти системные вызовы. Но простым смертным эта документация недоступна.

                                      За морями есть лимоновый сад,
                                      Я найду лимон и буду рад,
                                      Но я тебе не дам,
                                      Не смей меня винить.
                                      Посмотрите, до чего он хорош,
                                      Но на дороге ты его не найдёшь,
                                      Попробуй сделай сам,
                                      Не буду я тебя учить.

                                      Растут лимоны на высоких горах,
                                      На крутых берегах для крутых,
                                      Короче, ты не достанешь.
                                      Я вижу цель, я за лимоном
                                      Дотянуться хочу,
                                      Я за лимоном лечу
                                      И крутизной наслаждаюсь.
                                      Ответить
                                      • Допустим, ты запустил программу из эмулятора: в «Линуксе» запустил «QEMU» с «Windows», а из него уже программу «Win32». Программе доступны вызовы «WinAPI», но вызовы «Линукса» недоступны.

                                        А теперь будем считать, что и в «Винде» «Win32» является эмуляцией, а сисколлы –— это настоящая операционка, из которой запущен эмулятор.

                                        Эта эмуляция и позволяет одно и то же приложение «Win32» запустить из «Windows NT», из «Windows 95», из «Wine» в «Linux», из «Win32s» в «Windows 3.1» и ещё из целой кучи сред с разными ядрами и разными сисколами.

                                        Если считать «WinAPI» и сисколы «Винды» разными операционками, то будет легче?
                                        Ответить
                                        • > будет легче
                                          Нет. Почему я не могу писать под "NT" напрямую? Если мне не нужна совместимость с win 3.1, 95 и прочим говном мамонта.
                                          Ответить
                                          • По крайней мере, ты можешь запустить старое приложение Win32 на новой системе (за исключением совсем плохо написанных программ). А ведь такой возможности могло бы и не быть. Например, сейчас из 64-битной «Windows» нельзя запустить 16-битные приложения. WOW для них не стали реализовывать, потому что 16-битные приложения использовали «сисколы» (вызовы функций «DOS» посредством DPMI) для тех функций, которые не добавили в WinAPI.

                                            С другой стороны, разработчики из MS могут свободно менять ядро, не меняя API. Если бы они задокументировали сисколы, то были бы ограничены в своих фантазиях.
                                            Ответить
                                            • > С другой стороны, разработчики из MS могут свободно менять ядро, не меняя API. Если бы они задокументировали сисколы, то были бы ограничены в своих фантазиях.

                                              Проблемы негра Шерифа не волнуют! Если кто-то пишет на сисколах, которые могут поменяться в следующей версии винды, это его личные проблемы, а не проблемы разработчиков винды. И это совсем не повод чтоб что-то не документировать
                                              Ответить
                                              • Если поставить цель написать программу, работающую только в Windows XP SP2, но не работающую в SP3 и SP1 и в версии без сервиспаков, и в какой-либо другой винде, за исключением конкретно Windows XP SP2, то это можно сделать и без задействования системных вызовов.
                                                Ответить
                                            • > ограничены
                                              Всегда можно написать в доке, что это внутренняя хуйня и ты её используешь на свой страх и риск. И потом смело слать нахуй всех у кого что-то сломалось.
                                              Ответить
                                        • > Если считать «WinAPI» и сисколы «Винды» разными операционками, то будет легче?

                                          Легче кому и в чем? А что если считать, что «Cygwin» и «Wine» это тоже операционка?
                                          Ответить
                          • > KiFastSyscall

                            Кстати на WOW64 там оно через особую жопу работает

                            https://www.evilsocket.net/2014/02/11/on-windows-syscall-mechanism-and-syscall-numbers-extraction-methods/

                            Just WOW64

                            Obviously there’s some trick behind it, how a 32bit application could ask a 64bit processor to perform a transition from Ring3 to Ring0? As you probably know, Windows has a subsystem called WOW64 which acts as an emulation layer for 32bit apps under 64bit architectures. Among other things WOW64 is composed by a full set of 32bit stub/proxy libraries who make the app run without problems while WOW manages the switch between 32bit and 64bit OS code. An example of the KiFastSystemCall mechanism under WOW64 would be ( always talking about NtCreateFile )
                            mov	eax,52h
                            xor	ecx,ecx
                            lea	edx,[esp+04h]
                            call	fs:[C0h]
                            add	esp,04h
                            retn	002Ch

                            Very similar to the 32bit counterpart, but this time the call is towards FS:C0h, a field in the TIB which contains a pointer to another call. So let’s try to see what’s in there with the following C application.

                            ...
                            Ответить
                            • показать все, что скрытоvanished
                              Ответить
                              • > Тогда обращайся к MS, я думаю что Касперского есть описания всех сисколов.

                                Ага, наверняка за деньги и под анальной NDA.
                                Ответить
                            • Кстати интересно, почему они не сделали тупо как в линуксе - разные точки входа для разной битности. Хотели сохранить пирфоманс даже для 32-битных приложух?
                              Ответить
                              • Возможно, не хотели городить в ядре кучу механизмов для обеспечения работы вызовов обеих разрядностей? Сейчас же ядру винды по сути вообще не нужно знать про какие-то там «32-битные приложения» — WOW64 работает прозрачно как для ring3, так и для ring0.
                                Ответить
                          • > отреверсить
                            Открываешь ntdll и смотришь там как этот сисколл называется. Многие из них можно подсмотреть в ядерной доке.

                            З.Ы. Где, кстати, документировано внутриядерное API линукса?
                            Ответить
                    • > Я привел тебе параметр ядра, причем тут внутренний механизм? Ты понимаешь разницу? Не понимаешь разницы? Может, рано тебе еще в компах-то рассуждать?

                      А какую ты документацию на этот параметр ядра хочешь получить?
                      https://www.kernel.org/doc/html/v4.14/admin-guide/kernel-parameters.html
                      drm_kms_helper.edid_firmware=[<connector>:]<file>[,[<connector>:]<file>]
                                              Broken monitors, graphic adapters, KVMs and EDIDless
                                              panels may send no or incorrect EDID data sets.
                                              This parameter allows to specify an EDID data sets
                                              in the /lib/firmware directory that are used instead.
                                              Generic built-in EDID data sets are used, if one of
                                              edid/1024x768.bin, edid/1280x1024.bin,
                                              edid/1680x1050.bin, or edid/1920x1080.bin is given
                                              and no file with the same name exists. Details and
                                              instructions how to build your own EDID data are
                                              available in Documentation/EDID/HOWTO.txt. An EDID
                                              data set will only be used for a particular connector,
                                              if its name and a colon are prepended to the EDID
                                              name. Each connector may use a unique EDID data
                                              set by separating the files with a comma.  An EDID
                                              data set with no connector name will be used for
                                              any connectors not explicitly specified.

                      Устраивает?
                      Ответить
                  • показать все, что скрытоvanished
                    Ответить
    • показать все, что скрытоvanished
      Ответить
      • лол. Я самое первое что попытался сделать это конечно же cmd запустить.
        Запустил. А толку? Я не могу вводить с клавиатуры, потому что по какой-то случной хуйне все клавиши перебиндились на одну клавишу. теперь при нажатии s например выскакивает пуск. Запустил виртуальную клавиатуру, угадай что? Правильно и она тоже самое делала. Даже загуглить не смог.
        Ответить
    • *не вставая с места* У тебя на клавиатуре что-то лежит, проверь.
      Ответить
    • Прыщи не нужны
      Ответить
    • показать все, что скрытоvanished
      Ответить
    • Пацаны, я маслину поймал!!
      Ответить
    • показать все, что скрытоvanished
      Ответить
    • Окей. Сейчас придет борманд или его фейка и обявит, что я спамлю... Видали.
      Ответить
    • показать все, что скрытоvanished
      Ответить
      • Главное - нажимать и левые, и правые. Вдруг клавиша запала.
        Ответить
        • показать все, что скрытоvanished
          Ответить
          • Иногда такое может и с мышью сделаться. А уж внутри браузера на глючном сайте - и подавно.
            Кстати, про левые-правые - не только при аппаратной питушне. Бывает, правый Alt программно западает. Сколько левый не нажимай - не помогает.
            Ответить
        • Значит, нужно настройщика вызвать.
          Ответить

    Добавить комментарий