Aren't all programs open source? Windows allows changes right?

lister

New member
Power User
Local time
6:04 PM
Messages
259
Hi this is going to sound v v simple question but something i have often wondered. If I look around windows 7 it is possible to see all the code and reigstries along with all their .dll's etc etc.

This is all open right?

So what is the difference between that and "open-source"

I mean without sounding like I have malice, what is to stop someone copying the code and changing it and giving it another name?

In other words, i guess my question is, what makes windows "closed and propritary" whilst linux is open - since ALL programs and OS are written on your hard drive for me to read?

Thanks!!
 

My Computer

Computer Manufacturer/Model Number
Panasonic Toughbook CF F9
OS
Windows 7 Panasonic CF F9 (used to have CF F8)
  • Like
Reactions: JMH
Hi this is going to sound v v simple question but something i have often wondered. If I look around windows 7 it is possible to see all the code and reigstries along with all their .dll's etc etc.

This is all open right?

So what is the difference between that and "open-source"

I mean without sounding like I have malice, what is to stop someone copying the code and changing it and giving it another name?

In other words, i guess my question is, what makes windows "closed and propritary" whilst linux is open - since ALL programs and OS are written on your hard drive for me to read?

Thanks!!

"The term open source describes practices in production and development that promote access to the end product's source materials" wiki quote.

That means anyone can make changes to the system to facilitate another function.

Microsoft does not allow that and they dont release the "code" for their operating systems to the general public making it more difficult to develop apps for it.

Users can change the configuration and some minor things but have no knowledge of the underlying code.

In other words if you had the proper tools and experience you could look at "Linux" code but cannot without major difficulties do that with MS.
 

My Computer

Computer Manufacturer/Model Number
HP Pavillion dv-7 1005 Tx
OS
Win 8 Release candidate 8400
CPU
[email protected]
Memory
4 gigs
Graphics Card(s)
Nvidia 9600M
Sound Card
HD built-in
Monitor(s) Displays
17" Wxga
Screen Resolution
1440x900
Cooling
none
Internet Speed
45Mb down 5Mb up
Microsoft does not allow that and they dont release the "code" for their operating systems to the general public making it more difficult to develop apps for it.

Users can change the configuration and some minor things but have no knowledge of the underlying code.

But surely all the code is on my machine otherwise how can the OS work?

Thanks! (This is something that i have often wondered about!!)
 

My Computer

Computer Manufacturer/Model Number
Panasonic Toughbook CF F9
OS
Windows 7 Panasonic CF F9 (used to have CF F8)
Open source, as the name implies, means that the source code from which the executables are compiled is available.
That source code can be anything from C++ to Java, Python, .NET, and so on.

Nothing will ever stop you from reading the code inside .exe or .dll or .sys or any other files, of course. It's just pretty hard to understand for humans even if you reverse-engineer or decompile it. It's not source code as it's already compiled into an executable form.
 

My Computer

Computer type
PC/Desktop
Computer Manufacturer/Model Number
Custom-built
OS
Windows 7 Professional SP1 32-bit
CPU
Intel Core 2 Duo E6600 2.4GHz
Motherboard
Asus PL5D2
Memory
4GB DDR2-667 (4x1GB in dual-channel config)
Graphics Card(s)
nVidia GeForce 9800 GT
Sound Card
Creative X-Fi XtremeMusic
Monitor(s) Displays
Acer P236H
Screen Resolution
1920x1200 (DVI)
Hard Drives
OCZ SSD Vertex Plus 60GB SATA (Firmware 3.55), 64MB cache
Hitachi HD321KJ SATA, 320GB, 7200rpm, 16MB cache
PSU
Antec TruePower 2.0
Case
Cooler Master Centurion
Cooling
Too many fans
Keyboard
Standard
Mouse
Microsoft wireless optical mouse
Internet Speed
AT&T U-verse (18mbit/sec)
Antivirus
Microsoft Security Essentials
Browser
Firefox
Other Info
Other devices:
Compaq CQ-60 laptop
Google Nexus 7 (2012) tablet
Nvidia SHIELD tablet (US/LTE)
Hardkernel ODROID-XU single-board computer (Samsung Exynos 5420)
  • Like
Reactions: JMH
thanks for answering

so basically the code is encrypted?
 

My Computer

Computer Manufacturer/Model Number
Panasonic Toughbook CF F9
OS
Windows 7 Panasonic CF F9 (used to have CF F8)
This is an example source code. Notice how everything is written in a program language that a human can understand.

15477-VBcodePrint.jpg


When it is "compiled," it is basically converted to a form where it can be run by the machine (i.e. "machine code"). It basically would look like this, which doesn't make sense.

70xuo2.png


If you use a disassembler for said program, it would still be difficult, in a sense, to understand it because you can only go so far sometimes. Example:

30rpr29.png


Although it looks more readable, you can't really make a program out of that code. There's still a lot of gibberish you have to mind-stakingly translate for yourself.

In the most techinical sense, it isn't encrypted. It's only translated to another language. You cannot translate a paragraph of japanese and then back while still maintaining the exact same meaning (example: Google "justin bieber vietnamese translation").

Programmers can do means such that it would be hard to reverse-engineer it, like "packing".

Example of an open source project with source code (70-300 MB):
ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/8.0b3/source/
 

My Computer

Computer Manufacturer/Model Number
Asus G73SW-XN2
OS
Windows 2000 5.0 Build 2195
CPU
Intel Core i7-2630QM@2GHz(2.9GHz Turbo Boost) [Sandy Bridge]
Motherboard
Asus G73SW (Intel HM65 Chipset)
Memory
Kingston DDR3 1333 16GB (4GBx4)
Graphics Card(s)
nVidia GTX 460m 1.5GB
Sound Card
EAX Advanced HD 5.0, THX TruStudio
Monitor(s) Displays
17.3 in. primary & 23 in. secondary
Screen Resolution
1920x1080
Hard Drives
Seagate Momentus XT (SATA II) 500 GB @ 7200 RPM
Hitachi (SATA II) 500GB @ 7200 RPM

Non Raid because ASUS was crappy to choose an HM65 Chipset
Keyboard
Built-in 102-Key Backlit Keyboard
Other Info
It's a Laptop.
yep.
If you open a .dll in notepad, it will all come up looking like garbage. Thats the encryption working, so you can't read or understand it. The programs that use those .dll's can.
Furthermore, if you change one, the program that uses them recognises theres a change, and then refuses to work.
However, some files can be opened in a resource viewer (reshack to name one) that makes sense of the structure of the file and does its best to make it readable/writeable. But again, if you change something, you risk Windows even booting up.

Edit: Arkhi beat me to post. Good examples.
 

My Computer

OS
Windows 7 Enterprise
CPU
Intel Pentium Dual E2200 @2.2GHz
Motherboard
Gigabyte II-G31
Memory
4GB
Graphics Card(s)
Palit GForce 9500GT 1GB
Sound Card
onBoard
Hard Drives
WesternDigital: 250GB + 1TB + 1TB + 2TB
PSU
450W
Case
CoolerMaster CM690
Cooling
Corsair H50
Mouse
Logitech MX518
amazing thanks - somthing i have always wondered about. thanks for the time you took to help me with that
 

My Computer

Computer Manufacturer/Model Number
Panasonic Toughbook CF F9
OS
Windows 7 Panasonic CF F9 (used to have CF F8)
As stated above, closed source software is written and then compiled into a running executable form. The actual source code used to build the binaries are not provided to the customer. In addition, the software does what it does and cannot be modified by the end user. If you need it to do something different, you have to wait for MS (or whatever vendor) to rewrite the code and recompile the binaries.

Open source software on the other hand, gives away the source code itself. End users can make changes to the software to better meet their particular needs and then they can recompile and run the modified software. In addition, most open source software is published under a license such as the GPL (GNU Public License). With these licenses, the authors of the software write the software and give away the source code freely. If you want to use that software as is, or even modify it, you are free to do so. However, you must provide to the community the changes that you have made, if requested. You are not allowed to further restrict the spread of the software.

So, in a nutshell, I could take a piece of open source software and write my own features and functionality. I could even sell that software (to any customer willing to pay for it). However, I have to abide by the licensing of the GPL (or whatever has licensed the code that I used)...so I have to continue to provide the source code if requested and not impose restrictions on the further use of code from others who want to use it and modify it for their own benefit.
 

My Computer

Computer Manufacturer/Model Number
Self-Built in July 2009
OS
Windows 7 Ultimate x64
CPU
Intel Q9550 2.83Ghz OC'd to 3.40Ghz
Motherboard
Gigabyte GA-EP45-UD3R rev. 1.1, F12 BIOS
Memory
8GB G.Skill PI DDR2-800, 4-4-4-12 timings
Graphics Card(s)
EVGA 1280MB Nvidia GeForce GTX570
Sound Card
Realtek ALC899A 8 channel onboard audio
Monitor(s) Displays
23" Acer x233H
Screen Resolution
1920x1080
Hard Drives
Intel X25-M 80GB Gen 2 SSD
Western Digital 1TB Caviar Black, 32MB cache. WD1001FALS
PSU
Corsair 620HX modular
Case
Antec P182
Cooling
stock
Keyboard
ABS M1 Mechanical
Mouse
Logitech G9 Laser Mouse
Internet Speed
15/2 cable modem
Other Info
Windows and Linux enthusiast. Logitech G35 Headset.
It'l be hard to sell software, if everyone has the source code for it.
So you do what the Redhat Company does. Their OS is based on linux, and falls under the same GNU, so everyone can have it for free. So they only sell 'support and service', instead of the actual software itself. Very clever.

Its like me giving you a quadrotatingthruple nut, then charging you to show you how to use it.
 

My Computer

OS
Windows 7 Enterprise
CPU
Intel Pentium Dual E2200 @2.2GHz
Motherboard
Gigabyte II-G31
Memory
4GB
Graphics Card(s)
Palit GForce 9500GT 1GB
Sound Card
onBoard
Hard Drives
WesternDigital: 250GB + 1TB + 1TB + 2TB
PSU
450W
Case
CoolerMaster CM690
Cooling
Corsair H50
Mouse
Logitech MX518
Back
Top