|
Виж темите без отговор | Виж активните теми
Дата и час: Пон Юли 27, 2026 9:03 pm
| Автор |
Съобщение |
|
s.ivanov
Ранг: Новодошъл
Регистриран на: Съб Юни 03, 2017 1:21 pm Мнения: 163
|
 Re: Windows Leak
Въпрос е много полозен: директно разбираш, че е по-добре да продължиш с търсенето на друго работно място. Изобщо тази мода да се задават подобни въпроси е силно токсична. За мен по-доброто е: покажи какво си правил. При проверка за || се започва от ляво надясно и се приключва при първото true: На променливата а се прави инкремент в друг task. С volatile:  |  |  |  | Код: 80014f6: e75f b.n 80013b8 <main+0x88> osDelay(1); 80014f8: 2001 movs r0, #1 80014fa: f006 f9f1 bl 80078e0 <osDelay> if( (a == 0xaa) || (a == 0xAA) ) 80014fe: 4b2f ldr r3, [pc, #188] ; (80015bc <main+0x28c>) 8001500: 781b ldrb r3, [r3, #0] 8001502: b2db uxtb r3, r3 8001504: 2baa cmp r3, #170 ; 0xaa 8001506: d0f7 beq.n 80014f8 <main+0x1c8> 8001508: 4b2c ldr r3, [pc, #176] ; (80015bc <main+0x28c>) 800150a: 781b ldrb r3, [r3, #0] 800150c: b2db uxtb r3, r3 800150e: 2baa cmp r3, #170 ; 0xaa 8001510: d1f5 bne.n 80014fe <main+0x1ce> 8001512: e7f1 b.n 80014f8 <main+0x1c8>
|  |  |  |  |
Без volatile: С две думи - не виждам никаква реална полза от подобна "врътка" - напротив дори да има то прави кода "чуплив". А за четимост и поддръжка изобщо не става дума.
|
| Пет Фев 19, 2021 7:31 pm |
|
 |
|
palavrov
Ранг: Форумен бог
Регистриран на: Вто Окт 11, 2011 11:53 pm Мнения: 4582 Местоположение: Brussels / Пловдив
|
 Re: Windows Leak
Случи ми се нещо подобно тук с една фирма. Пресявката им беше да ти дадат задание по което да напишеш код който после да коментирате на живо.
Заданието половинчато и позволяващо всякакви интерпретации - останах с впечатлението, че всъщност е много хитър начин да видиш програмиста дали и доколко мисли и вниква в това което прави. Как да е, седнах и го направих както трябва добавяйки коментари там където заданието не е прецизно, какво съм предположил и какво може да се направи и т.н. На техническото интервю въобще не стана на въпрос за кода и за ужас на рекруитъра, който тамън виждаше една тлъста комисионна ги отсвирих.
_________________ Мразя да мразя ...
|
| Пет Фев 19, 2021 7:39 pm |
|
 |
|
Zdrav
Ранг: Форумен бог
Регистриран на: Сря Яну 26, 2005 2:01 pm Мнения: 1952 Местоположение: Варна
|
 Re: Windows Leak
Ако обърнеш внимание, ще забележиш че и аз съм на това мнение. А това за въпроса за интервюто си беше чиста ирония. Но помисли още малко върху 4-те случая.
_________________ Най-опасният враг на истината и свободата е мнозинството.
|
| Пет Фев 19, 2021 10:53 pm |
|
 |
|
ike
Ранг: Форумен бог
Регистриран на: Пет Фев 04, 2005 9:59 pm Мнения: 6019 Местоположение: София
|
 Re: Windows Leak
Може да звучи странно, но добавянето на стратегически nop може да удвои скоростта. Веднага давам пример. Микроконтролерите на TI с Ferroelectric RAM (FRAM) имат кеш и при компилиране понякога се случва цикъла който извършва някаква критична операция да не е подравнен и това вкарва допълнтелно изчакване при четене от паметта(което при FRAM, подобно на Magnetic-core memory автоматично означава и писане). Та ако се добавят на подходящо място инструкции nop (които в msp430 архитектурата всъщност са инструкцията MOV #0h,#0h или MOV #0,R3 или MOV R3,R3 - R3 регистъра е генератор на константи) кеша на FRAM се подравнява и автоматично скоростта на цикъла се удвоява. Сигурен съм че колегите са срещали много такива подобни "странности". За по-подробно обяснение препоръчвам Side-Channel Security Analysis of Ultra-Low-Power FRAM-based MCUs : https://www.cosade.org/cosade19/cosade1 ... _S10_1.pdf |  |  |  | Цитат: As a disadvantage we should refer to the fact that FRAM reads are destructive. That is, every read must be followed by a write operation (with the same data). However, this is automatically handled by the FRAM controller, and the end user does not need to pay any attention to this. Therefore, the frequency of FRAM read operations are limited to the write speed. Due to this limit, TI has integrated a read cache in front of the FRAM to accelerate the operations in case the MCU operates at a higher frequency than the FRAM. In the MSP430FR family, the FRAM can be operated at up to 8 MHz without use of this cache. When the MCU operates at a frequency of 16 MHz (the maximum operation frequency of the MSP430FR family), the cache is utilized. The integrated cache is a two-way associative cache containing two cache sets [17]. Each of these sets consists of two lines of four words (64 bits). The cache controller selects one of the cache lines to preload FRAM data and preserves recently-accessed data in the other cache line. If one of the four words stored in one of the cache lines is requested (a cache hit), no FRAM access occurs, and the requested data is read from the cache with full system speed. However, if none of the words that are available in the cache is requested (a cache miss), a wait state (one clock cycle at 16 MHz) controls the CPU to ensure proper FRAM access. Therefore, memory read accesses on consecutive addresses can be executed without wait states when they are within the same cache line. Each 64-bit location in FRAM can be cached in only one of the two sets in the cache. As shown in Figure 1, the most common scheme is to use the least significant bit of the FRAM location’s address as the indicator to the corresponding cache set. We should emphasize that FRAM contains both program code and data, e.g., look-up tables, which are to be stored in the non-volatile memory. Hence, frequent jumps and frequent accesses to the pre-stored tables in FRAM can negatively affect the cache performance. |  |  |  |  |
Ето и пример защо понякога е ОК да вкючваш и да изключваш "радара за връщане от Луната" ... за да не ти се рестартира процесора ... докато се опитваш да кацнеш. Източник: https://en.wikipedia.org/wiki/Apollo_11#Lunar_descent
_________________ Warriors of the Night, ASSEMBLER!!!
|
| Съб Фев 20, 2021 12:36 am |
|
 |
|
Zdrav
Ранг: Форумен бог
Регистриран на: Сря Яну 26, 2005 2:01 pm Мнения: 1952 Местоположение: Варна
|
 Re: Windows Leak
Това въобще не е странно. Факт е, че обикновено използваме супер-дупер хардуер, който е по принцип на светлинни години напред от софтуера. Та за това се налага да ползваме всякакви заклинания, когато пишем софтуер за него. <добавете си ирония на ум>
_________________ Най-опасният враг на истината и свободата е мнозинството.
|
| Съб Фев 20, 2021 1:49 pm |
|
 |
|
Cekins
Ранг: Форумен бог
Регистриран на: Сря Апр 20, 2005 12:02 pm Мнения: 9119 Местоположение: Разград
|
 Re: Windows Leak
Ахъм. Особено като има мотики в тоя супер дупер хардуер. И отговора на въпроса ко търсят тия 4 ноп-а в прекъсването, става малко по ясен.
|
| Съб Фев 20, 2021 8:42 pm |
|
 |
|
ike
Ранг: Форумен бог
Регистриран на: Пет Фев 04, 2005 9:59 pm Мнения: 6019 Местоположение: София
|
 Re: Windows Leak
Аз почвам да се замислям дали пък ... точно мотиките не правят хардуера. На практика всяка архитектура си има мотики ... та архитектура без мотики би било голяма мотика. Най-важното обаче е мотиките да са боядисани в червено и да имат малко дунапрен - за да се подготвиш малко преди да ги настъпиш. Процесорите с архитектура MIPS, PA-RISC, ETRAX CRIS, SuperH, and SPARC не бих ги определил като "супер дупер хардуер", обаче и те си имат особеност, която може да те изненада когато дебъгваш асемблера Delay slot: https://en.wikipedia.org/wiki/Delay_slotТа това обяснява първия nop останалите 3 nop-a за какво са по-запознатите ще кажат.
_________________ Warriors of the Night, ASSEMBLER!!!
|
| Нед Фев 21, 2021 12:18 am |
|
 |
|
bongo_x2
Ранг: Форумен бог
Регистриран на: Вто Яну 20, 2009 11:54 pm Мнения: 11338 Местоположение: "Занзибар"
|
 Re: Windows Leak
[quote="Zdrav"..... Факт е, че обикновено използваме супер-дупер хардуер, който е по принцип на светлинни години напред от софтуера.....[/quote] Аз нещо подобно се опитвам да обясня, но никой не ми вярва. ПРИМЕР: съвременните "говорящи програми" звучат леко по-добре от на Правчо-8. Да, ама там "звоковъзпроизвеждането" беше чрез скапано говорителче включено в колектора на импулсивен транзистор, за възможностите на компа не говоря. Но дори тогава по принцип само най-отговорните части на програмата се пишеха на ASM (с е*ах ти триковете!), другото на нещо компилирано или директно на BASIC (пак с трикове). Това позволяваше в 256 БАЙТА да набуташ функционалност, която сега ще е доста килобайти.
|
| Нед Фев 21, 2021 2:42 pm |
|
 |
|
ДедоБоре
Ранг: Форумен бог
Регистриран на: Нед Ное 21, 2004 11:31 pm Мнения: 10088
|
 Re: Windows Leak
PDP-11, VT102 и BSD 2.11 с работещ етернет и ТСР среккачено на ESP32 (~$1) с 512КВ PSRAM и 4/8МВ флаш... (още $2), сторидж на SD (8GB за 5лв) първото PDP, до което ме пуснаха, имаше 64КВ феритна памет, 2х10+10МВ 30" дискове (или бяха 5+5?), 2х38МВ 1/2" ленти и оригинален телетайп... няма и 40 години от тогава 
|
| Нед Фев 21, 2021 6:03 pm |
|
 |
|
Zdrav
Ранг: Форумен бог
Регистриран на: Сря Яну 26, 2005 2:01 pm Мнения: 1952 Местоположение: Варна
|
 Re: Windows Leak
Повече MHz и MB за по-малко $. Това звучи като цел определена от някой мениджър, а не инженер или учЕн. За това ли отидоха тези 40 години, Дедо? И защо PDP върху този хардуер? Щото е достатъчно ниска топка нали? Как пък никой не натисна малко повече да се проектира MCU, което да е правено с малко повече мисъл за многозадачност и паралелизъм. Вместо това няколко ядра забучени на някакви безумни кросбар-и и бъс-матрикс или фабрикс... Ядра набримчени на 200-300 MHz и фетчващи код от FLASH, който върви на 20-30 MHz. Пайплайн-и, кешове, ускорители, бриджове, арбитри... Без оптимизирани atomic операции, без синхронизационни примитиви... за priority ceiling protocol да не говорим. И айде пиши софтуер и на всяка крачка Enable/Disable IRQs, MSYNC, ISYNC... EIEIO Не е въпроса за мотики или други проблеми с имплементацията, а в това хардуера да се проектира с мисъл че върху него ще върви софтуер. Щото без софтуер си е просто едно голо желязо. На което думата "архитектура" му стои като на свинче звънче.
_________________ Най-опасният враг на истината и свободата е мнозинството.
|
| Пон Фев 22, 2021 1:53 pm |
|
 |
|
palavrov
Ранг: Форумен бог
Регистриран на: Вто Окт 11, 2011 11:53 pm Мнения: 4582 Местоположение: Brussels / Пловдив
|
 Re: Windows Leak
Всъщност от време на време има проблясъци - новият ARM MacBook е проектиран доста дорбе и с мисъл, работи като пушка, не грее, батерията му държи на цял ден работа, че и на два ако не си даваш много зор да работиш (има и такива дни, уикенди). Та:
Широки шини до паметта за да не се скопява производителността на ядрото в чакане на данни. Отделно паметта е на същия die като процесора което допълнително обързява и опростява дизайна. Надявам се и SSD да е закачен направо към процесора. Сумати хардуерни ускорители и модули в процесора за да не се налага тежки алгоритми да се изпълняват от самия процесор.
Както се казва - като искаш да се занимаваш сероизно със софтуер си прави сам хардуера.
Нищо ново под слънцето, просто са седнали и са го направили. Нещо което винтел за 40 години правеше точно наобратно - добавяха се слой след слой абстракции, шини, протоколи, емулации и т.н.
Да се надяваме, че един по един и останалите ще започнат да влагат повече мисъл за да има рядко 300 МХц процесори въртящ празни цикли докато зареди данни от 30МХц флаш.
_________________ Мразя да мразя ...
|
| Пон Фев 22, 2021 8:04 pm |
|
 |
|
Jack
Ранг: Напреднал
Регистриран на: Вто Май 07, 2019 9:16 pm Мнения: 434 Местоположение: I bin thinkin’ this bin Gurindji country. We bin here longa time before them Vestey mob.
|
 Re: Windows Leak
А каква е тая набираща популярност напоследък мания, GUI за Уиндоус Софтуер да почва да се пише на.... HTML и Java Script. 
|
| Вто Фев 23, 2021 2:56 pm |
|
 |
|
Н'бабане Гт'муан'га
Ранг: Форумен бог
Регистриран на: Сря Яну 25, 2012 9:14 am Мнения: 5298
|
 Re: Windows Leak
+1 по тоя точка. Всякаква форма на "real-time" тестове (т.е. даваш лист и молив на апликанта докато ти е на интервю, и го оставяш да се поти на някаква теория), е напълно безсмислена. Най-вероятно ще изпъкне някой с перфектна теория и нула практика. За съжаление много фирми все още наемат на тоя принцип, но забелязвам че фокуса вече е започнал да се измества. Аз съм установил че значително по-добри резултати се получават когато видиш портфолиото от направени неща и дадеш някаква малка задача близка до реалния свят, оставиш човека да си я разчовърка на спокойствие вкъщи за ден-два, и после да прати резултата. Всички хора които аз съм интервюирал досега са минали така и са се доказали като добър избор.
_________________ 'просто' е технически синоним на 'красиво'
|
| Вто Фев 23, 2021 3:54 pm |
|
 |
|
michev
Ранг: Форумен бог
Регистриран на: Сря Юли 11, 2007 10:16 am Мнения: 1730
|
 Re: Windows Leak
До тоя извод сам ли стигна или от ревюта в нета? Наистина ли е по-добър от х86 в ежедневна работа и в частност - програмиране (докери, джави, змии)? Е как каква - модерна джендария  . Даже не е таргетирано това само към уиндоус - повсеместно е (хромиум е отдолу). Гълта памет и е бавно. Разбира се има и изключения, но като цяло е много кофти тенденция.
|
| Вто Фев 23, 2021 5:30 pm |
|
 |
|
palavrov
Ранг: Форумен бог
Регистриран на: Вто Окт 11, 2011 11:53 pm Мнения: 4582 Местоположение: Brussels / Пловдив
|
 Re: Windows Leak
Сам, сам ... изчаках да излезе iFixit разпарчосването да видя какво са насътворили вътре и на момента си поръчах Air - да е без вентилатор защото не ме бърка от време на време да забавя ако го напъна. И така вече трети месец - не е загрял нито веднъж, не съм усетил да забави нито ведъж. Просто работи и с х86 емулация си наинсталирах всичко каквото ми трябва за програмиране докато едно по едно всичко се прекомпилира за ARM. Даже разни айфонски апп и игри се инсталираха и си работят все едно е телефон. Инсталирал съм и работя активно с arm-none-eabi-gcc, разните Nordic dev tools, VSCode, Android Studio ... разбира се vim & XCode си работят нейтив. Добавих и една USB-C докинг станцийка с етернет, хдми, четец на карти и т.н. че на компа има само 2 усб порта и изход за слушалки. Изключая Докер за всичко останало няма забележка. А доколкото знам Докер работят и скоро ще пуснат читав докер (ако все още не са). Отделно разни ентусиасти вече буутват линукс и БСД. По мое наблюдения това е най бързият, тих и дълго работещ на батерия лаптоп който съм имал. И то 3 от 3, а не избери 2 от 3.
_________________ Мразя да мразя ...
|
| Вто Фев 23, 2021 8:40 pm |
|
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 1 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|