TnFOX
ಟಿಎನ್ಎಫ್ಒಎಕ್ಸ್ ಪೋರ್ಟಬಿಲಿಟಿ ಟೂಲ್ಕಿಟ್ ಫಾಕ್ಸ್ ಜಿಯುಐ ಟೂಲ್ಕಿಟ್ನ ಒಂದು ಫೋರ್ಕ್ ಆಗಿದ್ದು, ಹೆಚ್ಚಿನ ಕೋಡ್ ಆರ್ಥೋಗೋನಲ್ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಅಳವಡಿಸುತ್ತದೆ (ಅಂದರೆ. ಫಾಕ್ಸ್ಗಾಗಿ ಅಭಿವೃದ್ಧಿಪಡಿಸಿದ ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ಟಿಎನ್ಎಫ್ಒಎಕ್ಸ್ಗಾಗಿ ಸುಲಭವಾಗಿ ಮರುಸಂಕಲಿಸಬಹುದು ಎಂದು ಫಾಕ್ಸ್ ಎಪಿಐ) ಅನ್ನು ಗಣನೀಯವಾಗಿ ಬದಲಾಯಿಸುವುದಿಲ್ಲ. ಅಸಾಮಾನ್ಯವಾಗಿ, ಟಿಎನ್ಎಫ್ಒಎಕ್ಸ್ ಕೆಲವು ಕ್ಯೂಟಿ ಲೈಬ್ರರಿ ತರಗತಿಗಳ ಎಪಿಐ ಅನುಕರಣೆಗಳನ್ನು ಸಹ ಹೊಂದಿದೆ-ಲೇಖಕರ ಪ್ರಕಾರ, ಕ್ಯೂಟಿಯಿಂದ ಫಾಕ್ಸ್ಗೆ ಗಣನೀಯ ಯೋಜನೆಯನ್ನು ಪೋರ್ಟ್ ಮಾಡಲು ಇದನ್ನು ಮಾಡಲಾಗಿದೆ. ಸೇರಿಸಲಾದ ಹೆಚ್ಚಿನ ವೈಶಿಷ್ಟ್ಯಗಳು ಪೂರ್ಣ "ಪೋರ್ಟಬಿಲಿಟಿ ಟೂಲ್ಕಿಟ್" ಲೈಬ್ರರಿಯನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತವೆ, ಅಂದರೆ ಯಾರಾದರೂ ಒಂದು ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಎಲ್ಲಿಯಾದರೂ ಚಲಾಯಿಸಲು ಬರೆಯಬಹುದು-ಇದು ಫಾಕ್ಸ್ಗಿಂತ ಭಿನ್ನವಾಗಿದೆ, ಇದು ಹೆಚ್ಚಾಗಿ ಕೇವಲ ಜಿಯುಐ ಪೋರ್ಟಬಿಲಿಟಿಯನ್ನು ಮಾತ್ರ ಒದಗಿಸುತ್ತದೆ. ಆದ್ದರಿಂದ ಟಿಎನ್ಎಫ್ಒಎಕ್ಸ್ ಒಂದು ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್ ಅಬ್ಸ್ಟ್ರಾಕ್ಷನ್ ಲೇಯರ್ಗೆ ಒಂದು ಉದಾಹರಣೆಯಾಗಿದೆ. ಫಾಕ್ಸ್ಗಿಂತ ಭಿನ್ನವಾಗಿ, ಟಿಎನ್ಎಫ್ಒಎಕ್ಸ್ ನಿರ್ಬಂಧಿತ ಸಿ + + ಕಂಪೈಲರ್ಗಳು ಮತ್ತು ಕಾರ್ಯಾಚರಣಾ ವ್ಯವಸ್ಥೆಗಳನ್ನು ಮಾತ್ರ ಬೆಂಬಲಿಸುತ್ತದೆ. ಇದು ಮೈಕ್ರೋಸಾಫ್ಟ್ನ C + + ಕಂಪೈಲರ್ v7.1 ಮತ್ತು ನಂತರದ, GCC v3.2 ಮತ್ತು ನಂತರದ ಮತ್ತು ಇಂಟೆಲ್ C + + ಕಂಪೈಲರ್ v8 ಅಥವಾ ನಂತರದ ಆವೃತ್ತಿಗಳನ್ನು ಮಾತ್ರ ಬೆಂಬಲಿಸುತ್ತದೆ. ಇದು ವಿಂಡೋಸ್ 2000 ಅಥವಾ ನಂತರದ, ಲಿನಕ್ಸ್ 2.6 ಅಥವಾ ನಂತರದ, ಫ್ರೀಬಿಎಸ್ಡಿ ಮತ್ತು ಮ್ಯಾಕ್ ಓಎಸ್ ಎಕ್ಸ್ 10.4 ಅಥವಾ ನಂತರದ, ಯಾವುದೇ ಪ್ರೊಸೆಸರ್ ಅಥವಾ ವಾಸ್ತುಶಿಲ್ಪದಲ್ಲಿ ಮಾತ್ರ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ. ಟಿಎನ್ಎಫ್ಒಎಕ್ಸ್ Boost.Python ಲೈಬ್ರರಿಯ ಆಧಾರದ ಮೇಲೆ ಪೈಥಾನ್ಗಾಗಿ ತನ್ನದೇ ಆದ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ರಚಿಸಲಾದ ಬೈಂಡಿಂಗ್ಗಳನ್ನು ಹೊಂದಿದೆ-ಇವುಗಳ ಸಂಕೀರ್ಣತೆಯು ಜಿಸಿಸಿ ವಿ4 ಗೆ-ಗೋಚರತೆಯ ವೈಶಿಷ್ಟ್ಯವನ್ನು ಸೇರಿಸುವ ಅಗತ್ಯವಿತ್ತು. ಆದಾಗ್ಯೂ, ಇತ್ತೀಚಿನ ವರ್ಷಗಳಲ್ಲಿ ಇವುಗಳ ಗುಣಮಟ್ಟ ಮತ್ತು ಸ್ಥಿತಿಯು ಕ್ಷೀಣಿಸಿದೆ. 2012ರಂತೆ ಈ ಗ್ರಂಥಾಲಯವನ್ನು ಅದರ ಲೇಖಕರು ನಿರ್ವಹಿಸುವುದಿಲ್ಲ. ಟಿ. ಎನ್. ಎಫ್. ಓ. ಎಕ್ಸ್. ನ ಗಣನೀಯ ವೈಶಿಷ್ಟ್ಯಗಳು ಟಿ. ಎನ್. ಎಫ್. ಓ. ಎಕ್ಸ್. ನ ಹೆಚ್ಚು ಮೂಲ ಲಕ್ಷಣಗಳಲ್ಲಿ ಒಂದೆಂದರೆ ಅದರ ಸಿ + + ಮೆಟಾಪ್ರೋಗ್ರಾಮಿಂಗ್ನ ಭಾರೀ ಬಳಕೆಯಾಗಿದೆ, ಆದರೂ ಇದನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ಜಿ. ಯು. ಐ ಕಡೆಯಿಂದ (ಫಾಕ್ಸ್ ಹೊಂದಾಣಿಕೆಗಾಗಿ) ದೂರ ಇಡಲಾಗುತ್ತದೆ. ಪೂರ್ಣ ಹಗುರವಾದ ಮೆಟಾಪ್ರೋಗ್ರಾಮಿಂಗ್ ಟೂಲ್ಕಿಟ್ ಅನ್ನು ಸೇರಿಸಲಾಗಿದೆ, ಇದು ಬೆರಳಚ್ಚು ಪಟ್ಟಿಗಳು, ಪ್ರಕಾರದ ಗುಣಲಕ್ಷಣಗಳು, ಕಂಪೈಲ್-ಟೈಮ್ ಲಾಜಿಕ್, ಫಂಕ್ಟರ್ಗಳು, ವರ್ಚುವಲ್ ಟೇಬಲ್ ಸಂಕಲನ, ಸಮತಲ ಪ್ರಕಾರದ ಪಟ್ಟಿ ತ್ವರಿತಗೊಳಿಸುವಿಕೆ ಮತ್ತು ಹೆಚ್ಚಿನವುಗಳನ್ನು ಒಳಗೊಂಡಂತೆ ಬೂಸ್ಟ್ ಮೆಟಾಪ್ರೋಗ್ರಾಮಿಂಗ್ ಲೈಬ್ರರಿಯು ಒದಗಿಸುವ ಅನೇಕ ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ಅನುಮತಿಸುತ್ತದೆ. ಬೂಸ್ಟ್ನಂತಲ್ಲದೆ, ಆಧುನಿಕ ಸಿ + + ಕಂಪೈಲರ್ನ ಅಗತ್ಯತೆಯಿಂದಾಗಿ, ಎಲ್ಲಾ ಮೆಟಾಪ್ರೋಗ್ರಾಮಿಂಗ್ಗಳು ಕೊಳಕು ಮ್ಯಾಕ್ರೋಗಳ ಅಗತ್ಯವಿಲ್ಲದೇ ಕಂಪೈಲರ್ಗಳಲ್ಲಿ ಸ್ಥಿರವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆ. ಮತ್ತೊಂದು ಅಸಾಮಾನ್ಯ ಲಕ್ಷಣವೆಂದರೆ ವ್ಯಾಪಕವಾದ ಎಕ್ಸೆಪ್ಶನ್ ಹ್ಯಾಂಡ್ಲಿಂಗ್ ಮತ್ತು ಸುರಕ್ಷತೆಯ ಬಳಕೆಯಾಗಿದ್ದು, ಯಾವುದೇ ರೇಖೆಯು ಯಾವಾಗಲೂ ಎಕ್ಸೆಪ್ಶನ್ ಅನ್ನು ಎಸೆಯುತ್ತದೆ ಎಂದು ಭಾವಿಸಲಾಗಿದೆ. ಟಿಎನ್ಎಫ್ಒಎಕ್ಸ್ ಒಂದು ಸಿ + + ರೋಲ್ಬ್ಯಾಕ್ ಕಾರ್ಯವಿಧಾನವನ್ನು ಒದಗಿಸುತ್ತದೆ (ಮೂಲತಃ ಆಂಡ್ರೇ ಅಲೆಕ್ಸಾಂಡ್ರೆಸ್ಕು ಪ್ರಸ್ತಾಪಿಸಿದಂತೆ) ದೋಷ ಸಂಭವಿಸಿದಲ್ಲಿ ಯಾವುದೇ ಹಂತದಲ್ಲಿ ಯಾವ ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ರದ್ದುಗೊಳಿಸಬೇಕೆಂಬುದನ್ನು ಟ್ರ್ಯಾಕ್ ಮಾಡಲು-ಬದಲಿಗೆ ಎಸ್. ಕ್ಯು. ಎಲ್ ವಹಿವಾಟಿನಂತೆ. ಈ ವಿಧಾನದೊಂದಿಗಿನ ಒಂದು ಸಮಸ್ಯೆಯೆಂದರೆ ಆಬ್ಜೆಕ್ಟ್ ಡಿಸ್ಟ್ರಕ್ಷನ್ ಸಮಯದಲ್ಲಿ ನೆಸ್ಟೆಡ್ ಎಕ್ಸೆಪ್ಶನ್ ಥ್ರೋಗಳ ಸಾಧ್ಯತೆಯಾಗಿದೆ, ಇದು ಐಎಸ್ಒ ಸಿ + + ಮಾನದಂಡದ ಅಡಿಯಲ್ಲಿ ತಕ್ಷಣದ ಪ್ರೋಗ್ರಾಂ ಮುಕ್ತಾಯವನ್ನು ಬಯಸುತ್ತದೆ-ಹೆಚ್ಚುವರಿ ಬೆಂಬಲ ಕೋಡ್ ಅನ್ನು ಸೇರಿಸಲು ಮೂಲವನ್ನು ಪೂರ್ವಭಾವಿಯಾಗಿ ಸಂಸ್ಕರಿಸುವ ಮೂಲಕ ಟಿಎನ್ಎಫ್ಒಎಕ್ಸ್ ಈ ಸಮಸ್ಯೆಯ ಸುತ್ತ ಕೆಲಸ ಮಾಡುತ್ತದೆ. v0.88 ಬಿಡುಗಡೆಯ ಒಂದು ಚಮತ್ಕಾರಿ ಸೇರ್ಪಡೆಯೆಂದರೆ ಅದರ ಲೋಕೇಲ್ ಸ್ಟ್ರಿಂಗ್ಗಳನ್ನು ಪರಿವರ್ತಿಸಲು ಗೂಗಲ್ ಟ್ರಾನ್ಸ್ಲೇಟ್ ಅನ್ನು ಬಳಸುವುದು. ಸಂಶಯಾಸ್ಪದ ಉಪಯುಕ್ತತೆಯಾಗಿದ್ದರೂ, ವಿಶೇಷವಾಗಿ ಸಣ್ಣ ತಂತಿಗಳಿಗೆ, ಇದು ಅನುವಾದದ ಸಮಯದಲ್ಲಿ ಸಮಯವನ್ನು ಉಳಿಸಬಹುದು. ಹೆಚ್ಚಿನ ಪೋರ್ಟಬಿಲಿಟಿ ಟೂಲ್ಕಿಟ್ಗಳಿಗಿಂತ ಭಿನ್ನವಾಗಿ, ಟಿಎನ್ಎಫ್ಒಎಕ್ಸ್ ಅನ್ನು ಅತ್ಯಂತ ವ್ಯಾಪಕವಾಗಿ ಪ್ರೊಫೈಲ್ ಮಾಡಲಾಗಿದೆ ಮತ್ತು ಗರಿಷ್ಠ ವೇಗ ಮತ್ತು ಕನಿಷ್ಠ ಮೆಮೊರಿ ಬಳಕೆಗಾಗಿ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಟ್ಯೂನ್ ಮಾಡಲಾಗಿದೆ. ಒಂದೇ ಕ್ಯಾಶ್ ಲೈನ್ಗೆ ಬರೆಯುವ ಎರಡು ಎಳೆಗಳನ್ನು ತಪ್ಪಿಸಲು ಟ್ಯೂನಿಂಗ್ ಸೇರಿದಂತೆ ಇದು ಬಲವಾದ ಮಲ್ಟಿಥ್ರೆಡಿಂಗ್ ಬೆಂಬಲವನ್ನು ಹೊಂದಿದೆ (ಇದು ಕ್ಯಾಶ್ ಲೈನ್ ಪುಟಿಯಲು ಕಾರಣವಾಗುತ್ತದೆ ಮತ್ತು ಸಮಾನಾಂತರ ಥ್ರೋಪುಟ್ಗೆ ಹೆಚ್ಚು ಅಡೆತಡೆಗಳನ್ನು ಉಂಟುಮಾಡುತ್ತದೆ). ಇದು ಐಚ್ಛಿಕವಾಗಿ ತನ್ನದೇ ಆದ ಥ್ರೆಡ್ ಕ್ಯಾಶಿಂಗ್ ಮೆಮೊರಿ ಅಲೋಕೇಟರ್ ಅನ್ನು ಬಳಸುತ್ತದೆ, ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಡೈನಾಮಿಕ್ ಅಲ್ಗಾರಿದಮ್ಗಳನ್ನು ಬಳಸುತ್ತದೆ, ಇದು ಮೆಮೊರಿ ಕಡಿಮೆ ಪರಿಸ್ಥಿತಿಗಳಿಗೆ ಅನುಗುಣವಾಗಿ ಮೆಮೊರಿ ಬಳಕೆಗಾಗಿ ವೇಗವನ್ನು ವಿನಿಮಯ ಮಾಡುತ್ತದೆ ಮತ್ತು SIMD ವಾಹಕಗಳ ಮೆಟಾಪ್ರೋಗ್ರಾಮಿಂಗ್ ಅನುಷ್ಠಾನವನ್ನು ಒಳಗೊಂಡಂತೆ ಅತ್ಯಂತ ಬಲವಾದ x86 ಮತ್ತು x64 ನಿರ್ದಿಷ್ಟ ಆಪ್ಟಿಮೈಸೇಶನ್ಗಳನ್ನು ಹೊಂದಿದೆ, ಇದು ಸ್ವಯಂಚಾಲಿತವಾಗಿ SSE ಕಾರ್ಯಾಚರಣೆಗಳಿಗೆ ಕಂಪೈಲ್ ಆಗುತ್ತದೆ (SSE4 ಬೆಂಬಲದವರೆಗೆ). ಇದು ತನ್ನದೇ ಆದ ತ್ವರಿತ ಮ್ಯೂಟೆಕ್ಸ್ ಅನುಷ್ಠಾನವನ್ನು ಬರೆಯುವ ಜೋಡಣೆಯನ್ನು ಹೊಂದಿದೆ, ಕರ್ನಲ್ಗೆ ಸಿಸ್ಕಾಲ್ಗಳನ್ನು ತಪ್ಪಿಸಲು ವ್ಯಾಪಕವಾದ ಆಂತರಿಕ ಕ್ಯಾಶಿಂಗ್ ಮತ್ತು ಅದರ ಸ್ವಂತ ಅಂತರ-ಪ್ರಕ್ರಿಯೆ ಸಂವಹನ ಚೌಕಟ್ಟನ್ನು ಹೊಂದಿದೆ, ಇದು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಸೀರಿಯಲೈಸೇಶನ್ ಮತ್ತು ಡಿಸಿರಿಯಲೈಸೇಶನ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು ಮೆಟಾಪ್ರೋಗ್ರಾಮಿಂಗ್ ಅನ್ನು ನಿಯಂತ್ರಿಸುವ ಮೂಲಕ ಅನಿಯಂತ್ರಿತ ಸಿ + + ಆಬ್ಜೆಕ್ಟ್ ನಿದರ್ಶನಗಳನ್ನು ಒಂದು ಸ್ಥಳದಿಂದ ಮತ್ತೊಂದು ಸ್ಥಳಕ್ಕೆ ಸಾಗಿಸುತ್ತದೆ. ಇದು ಅದರ ಎಸ್. ಕ್ಯೂ. ಎಲ್. ದತ್ತಸಂಚಯ ಅಂತರಸಂಪರ್ಕದಲ್ಲಿ ವಿಶೇಷವಾಗಿ ಸ್ಪಷ್ಟವಾಗಿದೆ, ಅಲ್ಲಿ ಒಬ್ಬರು ಅನಿಯಂತ್ರಿತ ಸಿ + + ಆಬ್ಜೆಕ್ಟ್ ನಿದರ್ಶನವನ್ನು ಬಿ. ಎಲ್. ಓ. ಬಿ. ಕ್ಷೇತ್ರಕ್ಕೆ ಸರಳವಾಗಿ ಬಂಧಿಸಬಹುದು ಮತ್ತು ಯಾವುದೇ ಕೋಡ್ ಅಗತ್ಯವಿಲ್ಲ. ಟಿಎನ್ಎಫ್ಒಎಕ್ಸ್ ಐಚ್ಛಿಕವಾಗಿ ಅದರ ಬಲವಾದ ಗೂಢಲಿಪೀಕರಣ ಮತ್ತು ಅದರ ಪೂರ್ವನಿಯೋಜಿತ ಎಸ್ಕ್ಯೂಎಲ್ ದತ್ತಸಂಚಯ ಅನುಷ್ಠಾನವನ್ನು ಕ್ರಮವಾಗಿ ಕಾರ್ಯಗತಗೊಳಿಸಲು ಓಪನ್ಎಸ್ಎಸ್ಎಲ್ ಗ್ರಂಥಾಲಯ ಮತ್ತು ಎಸ್ಕ್ಯೂಲೈಟ್ ಗ್ರಂಥಾಲಯದ ಪ್ರತಿಗಳನ್ನು ಒಳಗೊಂಡಿದೆ. ಇದನ್ನು ಪ್ರತ್ಯೇಕ ಡಿಎಲ್ಎಲ್ಗಳ ಗುಂಪಾಗಿ ಅಥವಾ ಏಕಶಿಲೆಯಂತೆ ಮಾಡ್ಯುಲರ್ ಆಗಿ ನಿರ್ಮಿಸಬಹುದು. ಇದು ಹೋಸ್ಟ್ ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್ ಎಸಿಎಲ್ ಭದ್ರತೆಗೆ ಸಂಪೂರ್ಣ ಪೋರ್ಟಬಲ್ ಬೆಂಬಲವನ್ನು ಹೊಂದಿದೆ ಮತ್ತು ಸ್ವಾಪ್ ಫೈಲ್ ಅನ್ನು ಪ್ರವೇಶಿಸದಂತೆ ಸೂಕ್ಷ್ಮ ಡೇಟಾವನ್ನು ಹೇಗೆ ರಕ್ಷಿಸುವುದು ಮತ್ತು ಯಾವುದೇ ಅಳಿಸಲಾದ ಭಾಗಗಳನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಚೂರುಚೂರು ಮಾಡುವುದು ಹೇಗೆ ಎಂದು ತಿಳಿದಿದೆ. ಇದು ಯಾವ ಬಳಕೆದಾರರು ಪ್ರಕ್ರಿಯೆಯನ್ನು ನಡೆಸುತ್ತಿದ್ದಾರೆ ಮತ್ತು ಅಗತ್ಯವಿದ್ದಲ್ಲಿ ಅದರ ಸವಲತ್ತುಗಳನ್ನು ಹೇಗೆ ಹೆಚ್ಚಿಸುವುದು ಎಂಬುದನ್ನು ಪ್ರವೇಶಿಸಬಹುದು. ಇದು ಡಿಮನ್ ಮತ್ತು ಸಿಸ್ಟಮ್ ಪ್ರಕ್ರಿಯೆಗಳಿಗೆ ಪೋರ್ಟಬಿಲಿಟಿ ಟೂಲ್ಕಿಟ್ ಆಗಿ ಸೂಕ್ತವಾದ ಯಾವುದೇ GUI ಬಿಲ್ಡ್ ಅನ್ನು ಹೊಂದಿಲ್ಲ. ಇದು ಯಾವುದೇ ಎಕ್ಸ್11/ಜಿಡಿಐ ಅವಲಂಬನೆಗಳನ್ನು ಹೊಂದಿಲ್ಲ. ಟಿಎನ್ಎಫ್ಒಎಕ್ಸ್ ಈಗಾಗಲೇ ಅವುಗಳನ್ನು ಬೆಂಬಲಿಸುವ ಕಂಪೈಲರ್ಗಳಿಗೆ ಸಿ + + 0x ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಸೇರಿಸಲು ಪ್ರಾರಂಭಿಸಿದೆ-ಇದು ಐಎಸ್ಒ ಸಿ + + ಮಾನದಂಡದ ಮುಂದಿನ ಪರಿಷ್ಕರಣೆಯಾಗಿದೆ. ವಿಜೆಟ್ ಟೂಲ್ಕಿಟ್ ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್ ಅಬ್ಸ್ಟ್ರಾಕ್ಷನ್ ಲೇಯರ್ ಅನ್ನು ಸಹ ನೋಡಿ ವಿಜೆಟ್ ಟೂಲ್ಕಿಟ್ಗಳ ಪಟ್ಟಿ ಫಾಕ್ಸ್ ಟೂಲ್ಕಿಟ್ ಕ್ಯೂಟಿ ಉಲ್ಲೇಖಗಳು ಬಾಹ್ಯ ಕೊಂಡಿಗಳು ಪ್ರಾಜೆಕ್ಟ್ ಮುಖಪುಟ ವಿಜೆಟ್ ಟೂಲ್ಕಿಟ್ಗಳು ಎಲ್ಜಿಪಿಎಲ್ ಪರವಾನಗಿಯನ್ನು ಬಳಸಿಕೊಂಡು ಸಿ + + ಸಾಫ್ಟ್ವೇರ್ನಲ್ಲಿ ಪ್ರೋಗ್ರಾಮ್ ಮಾಡಲಾದ ಉಚಿತ ಸಾಫ್ಟ್ವೇರ್