Re: [ntdev] Win10 Release time, version and old driver support



This is in stark contrast to a number of closed source operating systems
which have had to maintain their older USB interfaces over time. This
provides the ability for new developers to accidentally use the old
interfaces and do things in improper ways, causing the stability of the
operating system to suffer.


[/quote]


The usual strategy - claim something without attribution or reference to specific fact. Is this reference to a particular closed source OS or just some theoretical one that lazy programmers might abuse by using older interfaces?

Frankly I am in continue to be in awe of the architectural stability of NT and I have been working with and in it since 3.1 (my first shipping driver was for 3.51). It is not perfect (nobody would claim that) but it sure has been rational. Maybe I am jaded. I thought VMS and RSX were pretty rational too. Of course I find the notion of USB being “old” rather humorous.

Fun reading. Thanks for the link.

Cheers,

Dave Cattley

As usual, the author forgets that the first consequence of not having stable interfaces is that users (remember them) will pick a version, validate that it works, and never upgrade. So all of those lovely benefits of the 'improved’ interfaces will be incorporated in the main line of source, but not on devices in the field. Microsoft’s policy of virtually assured compatibility has allowed users to be confident enough that their computer will still work after they click install when Windows Update asks to download GB of data for hundreds of patches.

Sent from Surface Pro

From: Jan Bottorff
Sent: ‎Sunday‎, ‎October‎ ‎26‎, ‎2014 ‎5‎:‎12‎ ‎PM
To: Windows System Software Devs Interest List

Windows has a REMARKABLE history of compatibility for drivers. There are *many* drivers running today that were written for Windows 2000, about 15 years ago. There are drivers that were written for Windows NT that are still working today.

This is in contrast to Linux, where there is no binary compatibility of drivers between OS builds. Linux doesn’t even have a stable driver API set, and there is no plan to have one.

It seems like the driver compatability strategy on Linux is: you get your source code into the mainline source tree, and anybody who changes the mainline tree is supposed to also fix your driver if their change broke it. Of course the person who changed the mainline tree may not have your device, so there is no real way for them to run QA tests on the changes to your driver.

The situation of Linux driver compatibility seems to be described at https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/Documentation/stable_api_nonsense.txt

Jan


NTDEV is sponsored by OSR

Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev

OSR is HIRING!! See http://www.osr.com/careers

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

No one here can answer that question with authority. All that we can offer is our recapitulation of the long history of compatibility that Microsoft has ensured - clearly at immense expense and many hours of difficult work

Sent from Surface Pro

From: xxxxx@hexiscyber.com
Sent: ‎Tuesday‎, ‎October‎ ‎28‎, ‎2014 ‎2‎:‎14‎ ‎PM
To: Windows System Software Devs Interest List

So, getting back to the Windows 10 thing… is 10 supposed to be a major enhancement release like Vista seemed to be (there seems to be a lot of kernel functionality that is found in Vista and later)?

PS I just took the OSR Driver class in Sterling, VA - it was very good. I am a total Windows device driver novice, so forgive my utter lack of knowledge of what is to come (and what has already transpired). That said, I have developed Linux drivers for years for a wide variety of hardware - outside of a small subset of use cases not sure that either platform is really any better than the other.


NTDEV is sponsored by OSR

Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev

OSR is HIRING!! See http://www.osr.com/careers

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

Anton,

Please assess your statements more closely. Cryptographic signatures offer a cryptographically secure (and sometimes this is a pathetically secure) way of identifying the origin of a binary or block or source. This implies repudiation and legal ramifications in countries that have and respect tort laws. It might be a PIA for authors (us), but code signing is hardly a stupid idea - just like binary compatibility is extremely annoying to support, but is highly appreciated by users who don’t have to hunt the web for drivers for the latest OS release that happen to not exist because XYZ Corp is now out of business

Sent from Surface Pro

From: xxxxx@hotmail.com
Sent: ‎Wednesday‎, ‎October‎ ‎29‎, ‎2014 ‎3‎:‎30‎ ‎PM
To: Windows System Software Devs Interest List

Well, it seems to be that this is really a comparison between two fundamentally different
approaches to dealing with the issue of driver installation - binary vs source code.

Well, as far as security is concerned, the former approach is really stupid. MSFT realized it, and responded with even more stupid idea of driver signing…

The funniest thing here is that you don’t really need to distribute your drivers in a source form in order to enjoy all the security benefits that this approach offers. All you have to do is to compile your code to some intermediate bytecode during the build process, and make the installation one compile this intermediate code into the final executable format. If you do things this way you will be able to sign your driver code with some key that is unique and specific to a given OS installation(for example, it can be derived from the product key that is supposed to be unique). Any driver that has not been signed with this key will be rejected by the kernel exactly the same way insmod refuses to load drivers that haven’t been built against currently running kernel.

This is how you can ensure that all drivers that are allowed to run on a given machine have been authorized to do so by the user by the virtue of having been installed on the target machine. After all, it is user’s machine, and, hence, it is his/her/its right to allow any drivers that he/she/it wants to run on the machine regardless of MSFT’s “opinion” on a driver writer…

Anton Bassov


NTDEV is sponsored by OSR

Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev

OSR is HIRING!! See http://www.osr.com/careers

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

To that end, I have successfully resisted writing and positing a treatise on the correct use of personal pronouns in the English language - I quickly realized that it would be off topic to the penultimate degree.

If you will have the courtesy, please do lock the thread so I will have no opportunity to change my mind ???

Sent from Surface Pro

From: xxxxx@osr.com
Sent: ‎Thursday‎, ‎October‎ ‎30‎, ‎2014 ‎6‎:‎49‎ ‎PM
To: Windows System Software Devs Interest List

Hey, I have a BETTER idea:
How about this thread just end on its own… so I won’t have to lock it in the morning (Eastern US time)??

Peter
OSR
@OSRDrivers


NTDEV is sponsored by OSR

Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev

OSR is HIRING!! See http://www.osr.com/careers

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer