Simply question

7 отговора 324 прегледа
#1

Simply question

Как Windows-ът разбира, когато бъде натиснат клавиш (или бутон на мишката)? Чрез прекъсване или чрез някой сканиращ процес?

Отговор
в отговор на Simply #2

Re: Simply question

Има едно нещо, дето му се вика message queue. Windows-a има АПИ функция, която трябва да напишеш в програмата си, за да може да слушаш за събития. Не е прекъсване, по-скоро може да се нарече сканиращ процес, макар че не ми звучи много на място. Абе по-скоро това е нишка, която слуша входа. Ако те интересува как да го направиш, може да погледнеш
[линк]
като начало.

да цепиш дърва
да носиш вода


Отговор
в отговор на Simply #3

Re: Simply question

Tuka maj stana obyrkwane

Za6to mi se struwa 4e Simply ima6e w predwid onowa ne6to pod Message Queue

Ne moga da ti garantiram , no si mislja 4e go prawqt sys prekyswane, wse pak za6to trqbwa da si @#@$#@$ du6ite , kato kontrolera na prekyswaniqtq taka ili ina4e si generira prekyswane na wseki natisnat klawi6 Po-lesno e


~~~~~~~
In this world of a million religions everyone prays the same way!
Отговор
в отговор на dOOmEr #4

Re: Simply question

mhm, moje :) sorry ako sm podcenil 4oveka :) ama togava vyprosa moje da se prevyrne v ne tolkova simply

I want to walk into the lights

Отговор
в отговор на Simply #5

Re: Simply question

Да, имах впредвид това, което стои под опашката за съобщения. Мен ме интересува не как дадено приложение бива осведомявано за натиснат клавиш, а как самата ОС разбира първоначално за това. Ако е с някакъв сканиращ процес, няма да е много рационално от гледна точка на процесорно време. Остава варианта с прекъсването?

Отговор
в отговор на Simply #6

Re: Simply question

Simply : Po moe li4no mnenie wseki normalen 4owek bi go naprawil sys prekyswane, ne 4e Windowsa ima kakwo drugo da prawi dokato e Idle, ama wse pak , za6to trqbwa kato edin maloumnik da cikli na edno mjasto i da 4aka "Usera" da se nakani da natisne ne6to 99,99% sym siguren 4e go prawqt s prekyswane Edno 4e e po-ikonomi4no ot kym procesorno wreme a i obrabotkata na klawiaturata njama da se zabie ako njakoi re6i da naprawi bezkraen cikyl (Towa poslednoto e 6ega)

Hmmmmm, wse pak...Newedomi sa pyti6tata Microsoftski


~~~~~~~
In this world of a million religions everyone prays the same way!
Отговор
в отговор на dOOmEr #7

Re: Simply question

Ami zawisi ot arhitekturata na sistemata - pri tezi bez (P)IC njama kak da stane oswen tochno s maloumno ciklene.
Pri PC-tata za shtastie, klawishite si idwat s interrupt.

Отговор
в отговор на dOOmEr #8

В интерес на истината

операционните системи на телефонните централи разбират за постъпила заявка от страна на абонатите посредством сканиране на всички линии. Това се прави защото техният брой се счита за много голям (от порядъка на хиляди), а прекъсванията биха изисквали голям брой контролери на прекъсвания. Но.... тези операционни системи са системи работещи в реално време и нямат нищо общо с Windows-а.

Аз съм!
Отговор