Setuid in Unix created to enable a game
minnie.tuhs.org
minnie.tuhs.org
The setuid bit was invented by Dennis Ritchie and included in su. His employer, then Bell Telephone Laboratories, applied for a patent in 1972; the patent was granted in 1979 as patent number US 4135240 "Protection of data file contents." The patent was later placed in the public domain.[1]
[1] https://en.wikipedia.org/wiki/Setuid#HistoryDo/did intelligent people like Dennis Ritchie really not feel any discomfort by the fact that their great work robs the world of that very work through the parent system?
[1] See the answer to question 25 on Rob Pike's blog: https://commandcenter.blogspot.com/2020/01/unix-quiz-answers....
maybe it was one of those that slipped through the patent office as outside their true expertise?
If, _back_then_, it was new, non-obvious to a person having ordinary skill in the art (https://en.wikipedia.org/wiki/Person_having_ordinary_skill_i...), and not the only way to do what it does, why wouldn’t it?
Now, was it, back then? I wouldn’t know, but I think there is a decent chance it was.
As with most laws there's good and bad.
It would be very difficult to have a patent system where patents are owned exclusively by individuals, especially single individuals.
But to address what you said directly, I don't think it would be hard to have a system where patents are owned by an individual rather than a corporation. There's no fundamental law of the universe which says that patents must be assignable to corporations, or that patents must be assignable to someone other than the inventor at all. Though again, I am not advocating for such a system, and again, I am not sure why you are bringing it up.
This mailing list is full of actual legends, speaking casually about minutiae of unix history. Do not go there unless you have a strong antidote against time sinks.
It was more due to lack of userspace APIs for graphics programming than anything else.
I prefer "SUID" to "setuid" because setuid is also a syscall and in fact the setuid syscall is more often used to drop privileges. In fact, in order to use setuid to elevate privileges a process needs to have already had that UID/GID as its saved UID/GID. Also, with all due respect to Douglas McIlroy (who of course is one of the fathers of Unix), the patent by Dennis Ritchie mentioned elsewhere refers to "SUID", not "setuid". Wikipedia treats SUID and setuid synonymously, too, but this is one of those times where Wikipedia should be a little more pedantic, notwithstanding the popular usage of "setuid" to refer to both concepts; especially because in practice they're typically referring to completely opposite changes in direction of privileges.